这是我的getVIEw方法:
public VIEw getVIEw(int position,VIEw convertVIEw,VIEwGroup parent) { VIEw vi = convertVIEw; if (convertVIEw == null) vi = inflater.inflate(R.layout.item_gproblem,null); //vi.setClickable(true); TrIEd this //vi.setFocusable(true); TextVIEw txt_comment_description = (TextVIEw) vi .findVIEwByID(R.ID.txt_comment_description); txt_comment_description.setText(MyTasks.allGComments.get(position) .getProblemDescription()); //txt_comment_description.setFocusable(false); TrIEd this //txt_comment_description.setClickable(false); Switch switch_comment = (Switch) vi.findVIEwByID(R.ID.switch_comment); //switch_comment.setFocusable(false); TrIEd this //switch_comment.setClickable(false); //First time running getMyGComments returns a empty ArrayList if (MyTasks.allCustomers.get(ServerData.myID - 1).getMyGComments() .size() > position) { switch_comment.setChecked(MyTasks.allCustomers .get(ServerData.myID - 1).getMyGComments().get(position) .isProblemValue()); } return vi;}
这是我的onClickListener:
List_quality.setonItemClickListener(new OnItemClickListener() { @OverrIDe public voID onItemClick(AdapterVIEw<?> parent,VIEw vIEw,int position,long ID) { //Do Something } });
单击TextVIEw,Switch或两个对象之间的空格时,不会调用我的onItemClickListener.当我按下开关时,开关正常工作(状态改变).但我没有调用我的onItemClickListener.我试图禁用Switch和TextVIEw的可点击和可聚焦,但这也不起作用.
执行setonItemClickListeren.
解决方法 将下面的行添加到ListvIEw行的容器中:androID:descendantFocusability="blocksDescendants"
从您放置它们的任何地方删除所有可点击/焦点.如果按下整个项目,则应调用onItemClick.
此外,如果您希望ListvIEw行中的按钮也可单击,请将onClickListener添加到ListVIEw适配器getVIEw()方法内的按钮.
总结以上是内存溢出为你收集整理的android – 未调用ListView onItemClickListener全部内容,希望文章能够帮你解决android – 未调用ListView onItemClickListener所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)