Android开发中,对于ListView的Item里的按钮操作问题?
1.对于放在ListView的条目Item里的某个按钮来说,其点击事件应该放在UI主线程中吧,还是直接在适配器里的getView中对该按钮进行事件设置呢?我看网上好些例子...
1.对于放在ListView的条目Item里的某个按钮来说,其点击事件应该放在UI主线程中吧,还是直接在适配器里的getView中对该按钮进行事件设置呢?我看网上好些例子是直接在getView中操作,这样妥当、好吗?
2.如果直接在getView中,那么调用时传入进行的List里的数据好像不会真的改动,下次还是一样。
——>各位,请问如果不在适配器里进行事件操作,在调用生成该适配器的外部,如何进行操作呢?就比如拿某条目中的一个删除按钮来举例吧 展开
2.如果直接在getView中,那么调用时传入进行的List里的数据好像不会真的改动,下次还是一样。
——>各位,请问如果不在适配器里进行事件操作,在调用生成该适配器的外部,如何进行操作呢?就比如拿某条目中的一个删除按钮来举例吧 展开
2个回答
展开全部
首先getView也是在UI线程中。一般都是在getView中给View设置点击事件,因为这个时候Item的View才生成。按钮的点击相应一般来说要将当前行号什么的给传过去,否则怎么知道哪个Item的按钮被点击了。这里一般使用Tag或者ViewHolder什么的。
追问
谢谢。明白些了。
但是我的适配器类和调用它的类是分离的。这样如何弄呢。
原因:当在getView里对条目里的删除按钮操作后,本该删除该行(把List里相应的数据移除同时更新适配器),这样得到的没有立即更新,导致了下标越界。是为何?
。
提示:此时是在自定义的适配器类里对删除进行操作,移除数据的List集合也是通过该适配器构造函数传递来的。
麻烦了
追答
按删除按钮,你应该讲List数据集合中对应的数据删除, 然后再调用Adapter的notifyDataSetChanged()函数。这样就可以更新了。
2014-05-01
展开全部
【bat吧】不是【Beta Android Tieba】,请不要乱来...
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询