我正在尝试创建一个应用程序,该应用程序在GridView中动态列出已安装的应用程序.我能够以GridView形式显示应用程序,但无法使这些应用程序图标可点击.当我单击这些图标时,什么也没有发生. setOnItemClickListener内部的代码不会在click事件中触发.

部分代码:

类名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示例中给出的静态.

有人可以建议我一种使网格项目可点击的可靠方法.

解决方法:

您是否在网格本身或网格或网格项目的任何父项上都有某种点击侦听器?您是否已将单个网格项上的focus或clickable设置为false?单击项目周围是否看到选择器?

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

如果看不到xml或适配器,将很难猜测.

标签:gridview,android

来源: https://codeday.me/bug/20191201/2084581.html

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐