public void onListItemClick(ListView parent, View v, int position, long id)
{
super.onListItemClick(parent, v, position, id);
LayoutInflater inflater = (LayoutInflater)
this.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View popView = inflater.inflate(R.layout.offer_popup, null, false);
final PopupWindow pw = new PopupWindow(
inflater.inflate(R.layout.offer_popup, null, false),
500,
600,
true);
pw.showAtLocation(this.findViewById(android.R.id.list), Gravity.CENTER, 0, 0);
ImageView closeimage=(ImageView) popView.findViewById(R.id.imageView2);
closeimage.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
pw.dismiss();
}
});
我有上面的代码,closeimage是有效的,并且存在,但是我点击onIick函数未触发的closeimage。
答案 0 :(得分:1)
我看到你创建了popView View对象,但是在PopupWindow中你膨胀的不是你的popView而是R.layout.offer_popup布局。 之后,您将从popView获取Image对象并将其单击绑定到它。该单击应该关闭与popView对象无关的PopupWindow。
答案 1 :(得分:0)
我在这段代码中没有看到任何错误。也许你可以测试哪个元素在视图中有焦点?
另外看看这个: Android ImageView's onClickListener does not work
亲切的问候, BRAM
答案 2 :(得分:0)
也许您的onClick事件被某些其他视图截获。