首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Android:在ListView打开时将项目设置为选中状态?

Android:在ListView打开时将项目设置为选中状态?
EN

Stack Overflow用户
提问于 2010-10-08 13:49:58
回答 4查看 68.1K关注 0票数 15

一个活动有一个Button和一个ListView。最初,只有Button是可见的。按下按钮时,将显示ListView。显示时,是否可以将某个特定项目显示为选中/聚焦?

一个用例可能是,假设它是一个语言设置列表,当该列表打开时,当前选择的语言必须突出显示。

如果我知道项目的索引,如何将其设置为焦点显示?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2010-10-08 15:12:54

简而言之,ListView::setSelection(int position)就是您需要的。但是,根据设备是否处于触摸模式,它可能具有视觉效果,也可能没有视觉效果(背景突出显示)。有关更多详细信息,请参阅Android ListView Selection Problem

票数 15
EN

Stack Overflow用户

发布于 2013-06-18 22:42:19

我发布了我的解决方案,因为谷歌仍然不知道答案。

代码语言:javascript
复制
getListView().setItemChecked(selectedGroupIndex, true);
票数 41
EN

Stack Overflow用户

发布于 2012-04-23 16:45:08

如果对ListView使用Adapter,请将以下代码添加到适配器中:

代码语言:javascript
复制
public class MyAdapter extends ArrayAdapter<MyClass> {
    @Override
    public View getView(int position, View convertView, ViewGroup parent) {
        if (convertView == null) {
            LayoutInflater inflator = (LayoutInflater) getContext()
                    .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            rowView = inflator.inflate(R.layout.my_adapter, null);
        } else {
            rowView = (View) convertView;
        }

        //...

        // set selected item
        LinearLayout ActiveItem = (LinearLayout) rowView;
        if (position == selectedItem){
            ActiveItem.setBackgroundResource(R.drawable.background_dark_blue);

            // for focus on it
            int top = (ActiveItem == null) ? 0 : ActiveItem.getTop();
            ((ListView) parent).setSelectionFromTop(position, top);
        }
        else{
            ActiveItem.setBackgroundResource(R.drawable.border02);
        }    
    }

    private int selectedItem;

    public void setSelectedItem(int position) {
        selectedItem = position;
    }    
}

在你的Activity

代码语言:javascript
复制
myAdapter.setSelectedItem(1);
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3888015

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档