我的应用正在跳过> 300帧,因为它在主线程上做了太多工作。这是在我实现Gridview显示图片并通过点击它们最大化到全屏后发生的。如果我减小图像的大小它会变得更好但是对于最终的应用程序,它计划比现在有更多的图像,所以我认为这不是要走的路。 另外我还有一个问题:当我最大化它时,我想为每个图像都有一个特定的文本。基本上我点击gridview中的小图片,它在我的全屏幕活动中最大化并弹出一个文本字段。有没有办法实现这一点?
如果您需要任何进一步的信息,请与我们联系。
gridview的代码:
public class ImageAdapter extends BaseAdapter {
private Context mContext;
public ImageAdapter(Context c) {
mContext = c;
}
public int getCount() {
return mThumbIds.length;
}
public Object getItem(int position) {
return null;
}
public long getItemId(int position) {
return 0;
}
public View getView(int position, View convertView, ViewGroup parent) {
ImageView imageView;
if (convertView == null) {
imageView = new ImageView(mContext);
imageView.setLayoutParams(new GridView.LayoutParams(150, 150));
imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
imageView.setPadding(8, 8, 8, 8);
}
else
{
imageView = (ImageView) convertView;
}
imageView.setImageResource(mThumbIds[position]);
return imageView;
}
public Integer[] mThumbIds = {
R.drawable.eich, R.drawable.hase,
R.drawable.hase2, R.drawable.katze,
R.drawable.wasch, R.drawable.wauwau,
R.drawable.erd, R.drawable.wauwau,
R.drawable.eich, R.drawable.hase,
R.drawable.hase2, R.drawable.katze,
R.drawable.wasch, R.drawable.katze,
R.drawable.wauwau
};
这里是全屏视图的代码:
public class FullViewActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.full_view);
ImageButton back = (ImageButton)findViewById(R.id.imageButton3);
back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent BackToGrid = new Intent(FullViewActivity.this, GridViewActivity.class);
startActivity(BackToGrid);
}
});
Intent i = getIntent();
int position = i.getExtras().getInt("id");
ImageAdapter imageAdapter = new ImageAdapter(this);
ImageView imageView = (ImageView) findViewById(R.id.FullView);
imageView.setImageResource(imageAdapter.mThumbIds[position]);
}