具有单选列表的AlertDialog-我需要一些不可点击的项目 [英] AlertDialog with single choice list - I need some items nonclickable

查看:100
本文介绍了具有单选列表的AlertDialog-我需要一些不可点击的项目的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有单个选择列表的AlertDialog. 我想在其中放一些假"物品-例如以下物品的标签.我对常规商品和标签"商品使用了不同的布局.没关系. 我的问题是:如何使标签不可点击?

I have AlertDialog with single choice list. I want to put some 'fake' items inside - like labels of following items. I'm using different layout for regular item and for 'label' item. It it OK. My problem is: How to make labels NON clickable?

这是我的getView代码:

Here is my getView code:

// @Override
public View getView(int position, View convertView, ViewGroup parent)
{
if (m_data.get(position).BaseElementType == ElementType.Divider)
{
    convertView = m_li.inflate(this.m_groupResurceID, null);
    TextView post = (TextView)convertView.findViewById(R.id.text1);
    post.setText(m_data.get(position).TypeToString());
    post.getClickable();
}
else
{
    convertView = m_li.inflate(this.m_itemResurceID, null);

    TextView post = (TextView)convertView.findViewById(R.id.text1);
    post.setText(m_data.get(position).Header);

    ImageView img = (ImageView)convertView.findViewById(R.id.image1);
    Drawable dr = m_data.get(position).TypeToIconId();
    dr.setColorFilter(BGMapsApp.IconColor, PorterDuff.Mode.SRC_ATOP);
    img.setImageDrawable(dr);
}

推荐答案

答案非常简单! 只需将其放入适配器代码即可:

The answer is so simple! Just put this to adapter code:

    public boolean isEnabled(int position)
    {
        //return super.isEnabled(position);
        return (m_data.get(position).BaseElementType != ElementType.Divider);
    }

现在有些项目变得不可点击了:)

Now some items become non clickable :)

这篇关于具有单选列表的AlertDialog-我需要一些不可点击的项目的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆