我有一个线性布局,每次用户用相机拍照时,我都会用图像视图填充。所以这些图像视图是动态添加的。
对于这些图像视图中的每一个,我附加了一个 OnClick 事件以打开图片并将其显示在另一个活动的另一个图像视图中。
每个图像视图都有一个标签,其中包含一个带有位图信息的数组列表项。
OnClick 事件:
ImageView iv = new ImageView(this);
LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
iv.setLayoutParams(params);
iv.setImageBitmap(mBitmap);
iv.setTag(pli);
iv.setPadding(5, 5, 5, 5);
lvp.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
PhotoList pli = (PhotoList) arg0.getTag();
Intent i = new Intent(getBaseContext(), PhotoActivity.class);
i.putExtra("photo", pli.Photo);
i.putExtra("PhotoId", pli.id);
startActivity(i);
}
});
lvp.addView(iv);
显然 arg0.getTag() 行不工作。变量 arg0 属于线性布局,但我需要点击 imageview。
如何检测线性布局中的哪个图像视图被点击?
rg,埃里克