设置ListView某一项不可点击的办法

在项目中需要在ListView某一特定项中设置不可点击,尝试发现就算设置特定项的xml中android:clickable = “false”都没用,后来发现可以如下设置:

重写BaseAdapter的boolean isEnabled(int position)方法,默认是返回true,只需要根据position判断哪个位置不可点击,设置为false就可以了。
发布了3 篇原创文章 · 获赞 0 · 访问量 2877
展开阅读全文

在listview中,在点击某行按钮后,按钮变灰。其它的行的按钮也变灰了。

10-08

在listview中,每行显示一个图片、一个按钮及说明文字,在点击某行按钮后,按钮变灰。但是发现点击某行的按钮后,在滑动界面时,发现其它的行的按钮也变灰了。请问这是什么问题? 下面是listview中getView方法代码: @Override public View getView(final int position, View convertView, ViewGroup parent) { ViewHolder holder = null; // TODO:点击按钮时,会操作多个按钮问题 if (convertView == null) { convertView = inflater.inflate(R.layout.download_listview_oneline, null); holder = new ViewHolder(); // TODO:网络上获取图片 holder.img = (ImageView)convertView.findViewById(R.id.imageViewId); holder.textViewId1 = (TextView)convertView.findViewById(R.id.textViewId1); holder.button1 = (Button)convertView.findViewById(R.id.button1); // 不按比例缩放图片,目标是把图片塞满整个View holder.img.setScaleType(ImageView.ScaleType.FIT_XY); convertView.setTag(holder); } else { holder = (ViewHolder)convertView.getTag(); } try { Integer value = R.drawable.class.getDeclaredField(images[position].substring(0, images[position].indexOf("."))).getInt(null); holder.img.setImageResource(value); } catch (Exception e) { e.printStackTrace(); } holder.textViewId1.setText(dess[position]); holder.button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // TODO // view.setEnabled(false); if(view.getId() == R.id.button1) { Button b = (Button)view; // 点击后该按钮变灰,不能再点 b.setEnabled(false); dao.updateLastClickTime(2, _ids[position]); String url = urls[position]; String filename = url.substring(url.lastIndexOf("/") + 1); DownloadManager.Request request = new DownloadManager.Request(Uri.parse(url)); checkFile(DIR, filename); request.setDestinationInExternalPublicDir(DIR, filename); long downloadId = downloadManager.enqueue(request); //保存id downloads.put(downloadId, _ids[position]); } } }); return convertView; } // 标记tag public final class ViewHolder { public ImageView img; public TextView textViewId1; public Button button1; } 问答

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览