Java 高亮显示ListView项目而不触摸它

Java 高亮显示ListView项目而不触摸它,java,android,android-layout,android-listview,Java,Android,Android Layout,Android Listview,我的应用程序中有一个listView,我想突出显示一个listitem,但不要触摸它。我希望第一项始终突出显示。我该怎么做呢 以下是我的listview代码: 编辑 protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.listmenu); menuList = (ListView) fin

我的应用程序中有一个listView,我想突出显示一个listitem,但不要触摸它。我希望第一项始终突出显示。我该怎么做呢

以下是我的listview代码:

编辑

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.listmenu);

        menuList = (ListView) findViewById(R.id.list1);
    menuList.setAdapter(new ArrayAdapter<String>(this,R.id.list_content, heading));
    menuList.setSelection(1);
    View v = menuList.getSelectedView();
v.requestFocus();

 }
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.listmenu);
menuList=(ListView)findViewById(R.id.list1);
menuList.setAdapter(新的ArrayAdapter(this,R.id.list_content,heading));
选举名单(1);
View v=menuList.getSelectedView();
v、 requestFocus();
}

在Android 3.0之前,唯一需要做的就是让选定的视图聚焦。尝试以下方法:

menuList.setSelection(1);
View v = menuList.getSelectedView().requestFocus();
您也可以尝试
requstFocusFromTouch()
。在Android 3.0及更高版本中,添加了激活状态用于此目的,因此如果您针对的是较新版本,您可以在相应的视图上调用
setActivated()

您可以尝试

ArrayAdapter<String> adapter;

protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);
    setContentView(R.layout.listmenu);

    menuList = (ListView) findViewById(R.id.list1);
    adapter = new ArrayAdapter<String>(this,R.id.list_content, heading);
    menuList.setAdapter(adapter);
    menuList.setSelection(1);

    adapter.getView(0, null, menuList).setFocused(true);

 }
阵列适配器;
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.listmenu);
menuList=(ListView)findViewById(R.id.list1);
适配器=新阵列适配器(此,R.id.list\u内容,标题);
menuList.setAdapter(适配器);
选举名单(1);
getView(0,null,menuList).setFocused(true);
}

到目前为止,最简单的方法是:

getListView().setItemChecked(0, true);

下一个问题是什么

你不需要在你问的每一个与安卓系统相关的问题的开头都写上“安卓”。。。这就是“android”标签的作用。我试过了,当我进入listView活动时,我的应用程序崩溃了。我已经根据我的更改编辑了代码在这种情况下,请在
onAttachedToWindow()
onWindowFocusChanged(布尔hasFocus)
中尝试这些行,因为您的视图似乎还没有膨胀