【问题标题】:OnClick function is Not firing.OnClick 功能未触发。
【发布时间】:2012-01-11 06:14:14
【问题描述】:
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 是有效的,并且存在,但是我点击 closeimage 的 OnCLick 函数没有触发。

【问题讨论】:

  • 您确定 onClick() 不起作用吗?尝试添加,例如 Log.d("Log","click") 并检查一下。
  • 我放了一个断点,它永远不会进入。

标签: android popup onclick


【解决方案1】:

我看到你创建了 popView 视图对象,但在 PopupWindow 中你膨胀的不是你的 popView 而是 R.layout.offer_popup 布局。 之后,您将从 popView 获取 Image 对象并将单击绑定到它。该点击应该关闭与 popView 对象无关的 PopupWindow。

【讨论】:

  • 我需要那个 popView 否则它找不到 imageView2。
  • 我说,不要膨胀布局 (inflater.inflate(R.layout.offer_popup, null, false)) 而不是这个,把你的 popView 放在那里。弹出窗口将有您的视图,您将能够获取图像,并且图像单击应该可以工作。
  • 试试这个:final PopupWindow pw = new PopupWindow(popView, 500, 600, true);
【解决方案2】:

我在这段代码中没有看到任何错误。也许您可以测试哪个元素在视图中具有焦点?

还可以看看这个: Android ImageView's onClickListener does not work

亲切的问候, 布拉姆

【讨论】:

    【解决方案3】:

    也许你的 onClick 事件被其他视图拦截了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-12
      • 2021-05-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-03
      相关资源
      最近更新 更多