`
renaqiu
  • 浏览: 12167 次
  • 性别: Icon_minigender_2
  • 来自: 巴比伦
文章分类
社区版块
存档分类
最新评论

在dropdown(ListView)的下拉框,为每个item添加删除功能的button,并解决itemSelected无法响应的问题

 
阅读更多

      接着上一篇博客,username能够从下拉列表中选择要登录的账号,同时也能删除对应的账号。
      出现的问题是:嵌入自定义的item布局之后(自定义的Adapter中的getView方法中实现),发现item的选择事件捕捉不到了,点击dropdown的item之后完全没有响应。

      我经过试验后推测导致问题的原因是这样的:在item中嵌入自定义的布局后,item自身作为父容器,就不会截获touch事件,反而传给里面的布局(包括button)来实现。

      如果重写该自定义的布局的onTouch方法,使之返回false,那么ItemSelected的事件就会被捕捉到了,不过另一方面,button的click事件就捕捉不到了。(具体关于父子控件之间,touch事件是如何传递的,网上说明的文章很多)

      为了解决这个问题,我为整个自定义布局(例如最外)添加了onClickListener,如果点击了就将item中值赋到AutoCompleteTextView中,button的click事件也能成功另外捕获。

好的,上一下效果图:


选择item之后:


点击删除按钮:


删除之后:

  • 大小: 12.2 KB
  • 大小: 11 KB
  • 大小: 6.8 KB
  • 大小: 10 KB
  • 大小: 7.5 KB
3
1
分享到:
评论
4 楼 showcup 2011-09-03  
朋友,我刚开始学习android,从登录界面开始,反编译了支付宝和网易新闻两个软件,总算做出了一个非常精致登录。现在就差为AutoCompleteTextView条目增加删除按钮了,能否给点代码呀,谢谢!!!可以的话,发showcup@gmail.com
3 楼 chenjun864 2010-12-23  
楼主啊,把你getView 里面的实现发出来瞧瞧哇,我写的自定义ArrayAdapater
AutoCompleteTextView 不能自动匹配哇
2 楼 sinye 2010-09-19  
图全挂了,一个效果都看不到,能分享一份这方面的代码吗?
1 楼 zhc0822 2010-08-14  
楼主,能分享一下代码吗?看着文字还是不太明白

相关推荐

Global site tag (gtag.js) - Google Analytics