gpt4 book ai didi

android - 选择 ListView 的行而不是项目

转载 作者:行者123 更新时间:2023-11-29 22:14:26 26 4
gpt4 key购买 nike

我使用默认的 ArrayAdapter 创建了一个 ListView 。但是,要从列表中选择一个项目,我必须点击该项目而不仅仅是行。如何更改它以便仅单击项目所在的行而不是项目本身?

这是我的 ListView 的代码:

    ListView mListView = (ListView) findViewById(android.R.id.list);
mListView.setAdapter(new ArrayAdapter<String>(this, R.layout.row, ans));
mListView.setOnItemClickListener(new OnItemClickListener(){
@Override
public void onItemClick(AdapterView<?> arg0, View v, int i,
long l) {
Log.d(LOG_TAG,"Selected option"+i);
startActivity(intent);
finish();
}

});

这是 ListView 的 xml:

<ListView
android:id="@+id/list"
android:layout_width="wrap_content"
android:layout_height="250dp"
android:layout_marginLeft="50dp"
android:layout_marginRight="50dp"
android:divider="@drawable/list_divider"
android:dividerHeight="1dp" />

这是 row.xml:

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
style="@style/list_answers"
/>

最佳答案

更改行的 subview 以包含 android:focusable="false"。这将允许您单击整行。现在,由于每个单独的 View 都认为它可以获得焦点,因此它们出现在行的“顶部”。

附言我们真正需要的是 ListView 的 ROW 的 XML。不是 ListView 本身。 :)

希望对您有所帮助,

模糊逻辑

关于android - 选择 ListView 的行而不是项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8807248/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com