【问题标题】:GridView.setOnItemClickListener is not working in GridViewGridView.setOnItemClickListener 在 GridView 中不起作用
【发布时间】:2011-12-26 12:48:47
【问题描述】:

我正在尝试创建一个在 gridview 中动态列出已安装应用程序的应用程序。我能够以 gridview 形式显示应用程序,但无法使这些应用程序图标可点击。当我单击这些图标时没有任何反应。 setOnItemClickListener 内的代码不会被点击事件触发。

部分代码:

类名 dynamicgridactivity.java

 mGridMain.setOnItemClickListener(new OnItemClickListener() {     
    @Override
    public void onItemClick(AdapterView<?> parent, View v, int position, long id) {           

        ViewHolder holder = (ViewHolder)v.getTag();  
        Log.i("view get tag" ,v.getTag().toString());

        if(holder == null) {  

              return;        } 


        Toast.makeText(dynamicgridactivity.this, "Hello", Toast.LENGTH_SHORT).show();    
                }    });

    }

注意:我的应用程序图标和 gridview 显示中的文本是动态的,而不是 android 示例中给出的静态。

有人可以建议我一种使网格项目可点击的可靠工作方式。

【问题讨论】:

    标签: android gridview


    【解决方案1】:

    您是否在网格本身或网格或网格项的任何父项上安装了某种点击监听器?您是否在单个网格项目上将可聚焦或可点击设置为 false?当您单击项目时,您是否看到项目周围的选择器?

    您也可以尝试在网格中的每个项目上设置一个 onClickListener 视图(诚然效率较低)。

    如果无法看到 xml 或您的适配器,这将有点难以猜测。

    【讨论】:

      【解决方案2】:

      需要检查 mGridMain 声明。可能是家长的观点不正确

      【讨论】:

      【解决方案3】:

      只要确保您在网格中的其他任何地方都没有 itemclick 侦听器

      【讨论】:

        猜你喜欢
        • 2012-08-09
        • 1970-01-01
        • 2022-08-05
        • 2017-02-24
        • 2016-01-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多