在Android中,可以通過以下步驟來獲取ListView中選中的行:
android:background
屬性來設置選擇器樣式,例如:<ListView
android:id="@+id/listView"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:choiceMode="singleChoice"
android:listSelector="@android:color/darker_gray" />
在這個例子中,選擇器使用了系統自帶的灰色樣式。
OnItemClickListener
監聽器,用于監聽行的點擊事件。在監聽器的onItemClick
回調方法中,可以獲取到被點擊行的位置(position):ListView listView = findViewById(R.id.listView);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// 處理選中行的邏輯
}
});
onItemClick
方法中,可以通過position
參數來獲取選中行的位置。根據位置,可以獲取到對應的數據對象或者更新UI。以上是通過點擊行來獲取選中行的方式。如果要根據其他操作獲取選中行,可以使用getCheckedItemPosition
方法來獲取當前選中行的位置,例如:
int selectedPosition = listView.getCheckedItemPosition();
然后可以根據位置來獲取對應的數據對象或者更新UI。
注意:如果ListView的選擇模式是CHOICE_MODE_SINGLE
,只能選擇一行;如果選擇模式是CHOICE_MODE_MULTIPLE
,可以選擇多行。