한 번에 하나의 항목 만 선택하려는 경우 ListView를 설정할 때 선택 모드를 단일로 설정하십시오.
myListView.setChoiceMode(ListView.CHOICE_MODE_SINGLE)
onItemClickListener를 설정해야합니다.
myListView..setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long rowId) {
// Your Code Here
}
});
당신이 당신의 ArrayAdapter와를 설정하면 선택한 항목의 배경을 강조 등 simple_list_item_activated_1
같은 기본 안드로이드 항목 레이아웃 중 하나를 사용할 수 있습니다.
myArrayAdapter = new ArrayAdapter<String>(getContext(),
android.R.layout.simple_list_item_activated_1, myArrayList);
배경이 아닌 텍스트 색을 변경하는 것과 같은 사용자 지정 동작을 원할 경우 항목 레이아웃을 자신의 것으로 대체하면됩니다. 기본 Android 항목 레이아웃을보고 작성 방법을 확인하십시오. 예를 들어 기본 Android 항목 레이아웃 android.R.layout.simple_list_item_activated_1
은 배경색을 정의하기 위해 activatedBackgroundIndicator
이라는 선택자를 사용했음을 알 수 있습니다. 귀하의 경우에는
<Additional>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceListItemSmall"
android:gravity="center_vertical"
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd"
android:background="?android:attr/activatedBackgroundIndicator"
android:minHeight="?android:attr/listPreferredItemHeightSmall"
/>
는, 텍스트 색상 대신 배경의 변경을 얻을, 당신은 당신의 텍스트 색상 선택기를 사용하는 것이 좋습니다.
res
디렉토리에
color
폴더를 만듭니다. 그것의 선택을 만듭니다
my_color_selector.xml
텍스트의 색상을 설정하여 사용자 정의 항목 레이아웃 그리고
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_activated="true" android:color="@color/my_red_color />
<item android:drawable="@color/my_blue_color" /> <!-- color when not selected -->
</selector>
my_color_selector
에 대한 귀하의 질문은 명확하지 않다. 시나리오를보다 명확하게 설명하십시오. – Shashika지금까지 코딩 된 내용은 무엇입니까? – DeathByTensors