0
所以基本上屏幕上有一个带有9个图像的GridView。当其中一个图像点击时,我使用setContentView打开一个图像视图的布局,以显示所选图像。完成这些图片后,他们会点击回去,然后移除contentView并再次显示GridView。除了在其他contentView中使用ImageView以外,大部分工作原理都是如此。setContentView over并设置ImageView强制关闭
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setView();
setContentView(R.layout.wall);
GridView gridview = (GridView) findViewById(R.id.gridview);
gridview.setAdapter(new ImageAdapter(this));
gridview.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> arg0, View arg1, int position,
long arg3) {
pos = position;
displayWallpaper();
}
});
}
private void displayWallpaper(){
switch(pos){
case 0:
setContentView(R.layout.wallpaper);
viewing=true;
ImageView image1 = (ImageView)findViewById(R.id.display);
rotate(R.drawable.wallpaper1, image1);
break;
}
}
所以强制关闭发生在ImageView线。我的猜测是它没有找到显示,但显示在壁纸布局。任何想法为什么它可能会强制关闭。如果你需要更多的信息,让我知道什么,如果你有更好的方式做我想做的事情让我知道。谢谢。
也只是测试了一下。到目前为止,如果rotate()被注释掉并且ImageView在那里,强制关闭仍然会发生。如果我对它们发表评论,它可以正常工作(除了显示图像)。
您可以发布您的onCreate()和你在哪里调用displayWallpaper()代码? –
你有没有交叉检查ImageView的存在和ID,即显示在壁纸布局 –
@YashwanthKumar在那里你去发布上面的onCreate。 – steven