【发布时间】:2016-03-09 10:16:04
【问题描述】:
我创建了一个Listview,当我点击列表视图时,我想在详细视图活动(另一个活动)中发送该行图像详细信息。
为此,我尝试了下面的代码,但我遇到了异常
java.lang.Integer cannot be cast to android.os.Parcelable
第一个活动:-
// Listen for ListView Item Click
view.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// Send single item click data to SingleItemView Class
Intent intent = new Intent(mContext, SingleItemView.class);
intent.putExtra("imageId",(worldpopulationlist.get(position).getImageId()));
mContext.startActivity(intent);
}
});
}
第二个活动:-
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.singleitemview);
// Retrieve data from MainActivity on item click event
Intent i = getIntent();
// Get the results of imageView
Bitmap bmp = (Bitmap) i.getParcelableExtra("imageId");
srcimage = (ImageView)findViewById(R.id.imageId);
srcimage.setImageBitmap(bmp);
}
【问题讨论】:
-
你的第一个活动代码我完全错误。您应该将 onListItemClickListener 用于列表项单击事件而不是 onCLickListener
-
当我发送 textview 数据而不是对另一个活动很好的图像时,这不是问题,并且我在 Listview adapterClass 中编写了 setOnClickListener
-
(worldpopulationlist.get(position).getImageId()) 可能是一个整数值。
-
是的,没错,就是存储整数数组值,那么如何解决这个问题
-
您正在正确获取数据,因为您正在传递位置并且这将起作用,但这不是这样做的正确方法