android listview嵌套怎么禁用ListView的点击事件

3720人阅读
android屏蔽listview 的item点击事件。这种需求在现在还是比较多的,比如:QQ聊天界面每条记录都是listview中的一个item,但是这个时候我们并不需要点击的时候高亮显示,还有微信的朋友圈里面也是的,好友的动态都是listview的一条记录,但是只有点击记录中的图片,链接等才需要有响应,点击这一行的时候不要高亮,不需要响应。
怎么实现呢?
其实很简单:
只需要将listview 的adapter控制一下就可以了,
一般我们是将BaseAdapter的两个方法重写一下
public boolean areAllItemsEnabled() {
public boolean isEnabled(int position) {
第一个方法是表明adapter中的所有item是否可以点击 ,第二个方法是表明下标为position 的item不可选中,不可点击。
版权声明:本文为博主原创文章,未经博主允许不得转载。
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:192878次
积分:2672
积分:2672
排名:第6927名
原创:66篇
转载:35篇
评论:56条
(1)(1)(1)(1)(1)(3)(3)(2)(2)(1)(2)(2)(8)(5)(4)(7)(10)(7)(5)(6)(6)(10)(6)(9)android 怎么禁用ListView的点击事件_百度知道
提问者采纳
不用设listview的点击事件,在listview的xml布局文件中加上android:descendantFocusability=&blocksDescendants&这样每个item的button的点击事件就可以获取,你只要在adapter中写相应控件的点击事件就行了
其他类似问题
为您推荐:
android的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁14:26 提问
Android 在 listview 的 list item 中禁用 onclick 事件
在 Listview 中有一个 HeaderView。当点击它时,它隐藏文本,然后显示一个 spinner 来从别的地方获取数据。
第一次点击后,我想禁用 onClick,那样的话就不能调用多次获取。
我使用 v.setClickable(false) 和 v.setEnabled(false), 但是都不能正常运行。
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
if (position == 0) {
ProgressBar pb = (ProgressBar) v
.findViewById(R.id.refresh_progress);
pb.setVisibility(View.VISIBLE);
TextView tv = (TextView) v.findViewById(R.id.load);
tv.setVisibility(View.GONE);
v.setClickable(false);
DownloadTask dt = new DownloadTask(v, "Old Message");
dt.execute();
有什么好的建议吗?谢谢!
按赞数排序
private HashMap&Integer,Boolean& map = new HashMap&Integer,Boolean&();
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
if (position == 0 && ! map.get(position)) {
map.put(position,true);
ProgressBar pb = (ProgressBar) v
.findViewById(R.id.refresh_progress);
pb.setVisibility(View.VISIBLE);
TextView tv = (TextView) v.findViewById(R.id.load);
tv.setVisibility(View.GONE);
v.setClickable(false);
DownloadTask dt = new DownloadTask(v, "Old Message");
dt.execute();
private boolean wasFetchStarted =
protected void onListItemClick(ListView l, View v, int position, long id) {
super.onListItemClick(l, v, position, id);
if (position == 0 && ! wasFetchStarted) {
wasFetchStarted =
ProgressBar pb = (ProgressBar) v
.findViewById(R.id.refresh_progress);
pb.setVisibility(View.VISIBLE);
TextView tv = (TextView) v.findViewById(R.id.load);
tv.setVisibility(View.GONE);
v.setClickable(false);
DownloadTask dt = new DownloadTask(v, "Old Message");
dt.execute();
其他相似问题
相关参考资料Android-ListView中嵌套(ListView)控件时item的点击事件不起作用的问题04
上亿文档资料,等你来发现
Android-ListView中嵌套(ListView)控件时item的点击事件不起作用的问题04
Android-ListView中嵌套(List;6:18:10|分类:|标;当ListView中嵌套了一个Button或者I;1.在子ListView的XML配置中,最顶层的;android:descendantFocusa;2.设置ListView的setFocusabl;[java];1.publicStatisticsForca
Android-ListView中嵌套(ListView)控件时的问题【转】 16:18:10|
标签: |字号大中小 订阅当ListView中嵌套了一个Button或者ImageButton时,会让ListView的OnItemClickListener失去效果。
本意是想让ListView中嵌套一个ListView(ListView嵌套ListView),呵呵。结果父View的OnItemClick事件不触发了。郁闷,调查了一下,找到一个解决方案。 1. 在子ListView的XML配置中,最顶层的Layout中增加属性:android:descendantFocusability=&blocksDescendants&2. 设置ListView的setFocusable为false就行了。 [java]1. public StatisticsForcastListView(Context context,int period) {2.3. super(context,null);4.5. this.period =6.7. initialComponent();8.9. }10.11.12.13.14. private void initialComponent() {15.16. //默认的列表背景色17.18. this.setBackgroundColor(Constants.C_Color_Content_Background);19.20. //自动消失的滚动条21.22. this.setScrollbarFadingEnabled(true);23.24. //不能点击25.26. this.setClickable(false);27.28. //不能获取焦点29.30. this.setFocusable(false);31.32.33.34. //设置高度为固定的值35.36. layout.height = ScreenAdapter.getInstance().ComputeHeight(200);
37.38. this.setLayoutParams(layout);39.40.41.42. //设置数据过滤器43.44. if(adapter==null) {45.46. adapter = new StatisticsForcastDataAdapter(getContext(),period);
47.48. }49.50. this.setAdapter(adapter);51.52. } Adapter对应的Xml文件:[html] view plaincopy1. &?xml version=&1.0& encoding=&utf-8&?&2.3. &LinearLayout xmlns:android=&/apk/res/android&
android:orientation=&horizontal&6.7.
android:id=&@+id/statistics.forcast.mainContainer&8.9.
android:layout_width=&fill_parent&10.11.
android:layout_height=&wrap_content&12.13.
android:descendantFocusability=&blocksDescendants&14.15.
&&!-- 主窗体 --&16.17.
&TextView android:layout_width=&wrap_content&18.19.
android:layout_height=&wrap_content&20.21.
android:layout_weight=&5.5&22.23.
android:id=&@+id/statistics.forcast.numbers&
android:gravity=&center&26.27.
android:text=&12,15,2,4,6,9,14&28.29.
&TextView android:layout_width=&wrap_content&
android:layout_height=&wrap_content&34.35.
android:layout_weight=&3.8&36.37.
android:id=&@+id/statistics.forcast.forcastDate&
android:gravity=&center&40.41.
android:text=& 12:30:27&42.43.
&TextView android:layout_width=&wrap_content&
android:layout_height=&wrap_content&
android:layout_weight=&3.8&50.51.
android:id=&@+id/statistics.forcast.award&
android:gravity=&center&54.55.
android:text=&未中奖&56.57.
/&58.59. &/LinearLayout&60. 包含各类专业文献、高等教育、应用写作文书、外语学习资料、幼儿教育、小学教育、各类资格考试、Android-ListView中嵌套(ListView)控件时item的点击事件不起作用的问题04等内容。
 Android中ListView点击和item里面的button或ImageView不...mListView = (ListView) findViewById(R.id.friends...还有就是在要添加事件的控件 上添加 android:...  android捕获ListView中每个item点击事件_计算机软件及应用...listview = (ListView)findViewById(R.id.listview)...Android-ListView中嵌套... 3页 免费 Android 中...  Android-ListView单击事件_计算机软件及应用_IT/计算机...(R.layout.activity_main); listView=(ListView)...Android-ListView中嵌套... 3页 免费 android:处理...  Android之ScrollView嵌套ListView冲突_计算机软件及应用...(R.id.listView); listView.setAdapter(new Array...Android中控件:ListVie... 4页 免费 android ListView...  ListView 控件的背景图片和布局方式 ListItems(Index) 属性 控件中列表项的集合...ItemClick 单击某一列表对象时发生 参数 item 对当前列表项的引用 事件 After...  里嵌套一个 ListView 控件 --& &ListView android:id=&@id/android:list& &...条目事件 @Override protected void onListItemClick(ListView l, View v, int ...  android listview点击事件失效不响应由于使用了滑动删除所以 listView 的 setOnItem...当 listView 的 Item 有类似 Button 或者是 CheckBox 控件时,有时即使加上了 ...  里嵌套一个 ListView 控件 --& &ListView android:id=&@id/android:list& &...条目事件 @Override protectedvoid onListItemClick(ListView l, View v, int ...  (); } /** * 获取点击事件 * * @return */...加载数据如下: lv = (LinearLayoutForListView) ...android ListView优化 2页 免费 Android中控件:ListVie...Android ListView怎么取消点击效果_百度知道
Android ListView怎么取消点击效果
提问者采纳
android:listSelector=&@android:color/transparent&,
其他类似问题
为您推荐:
其他1条回答
listview.setClickable =每个item的点击效果没试过。。。
android的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁

我要回帖

更多关于 android 横向listview 的文章

 

随机推荐