OnClick函数未触发。

时间:2012-01-10 20:07:46

标签: android popup onclick

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。

3 个答案:

答案 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事件被某些其他视图截获。