저는 ListView를 가지고 처음으로 항목을 표시하고 싶습니다. 일부 항목을 비활성화하려고합니다.android : state_enabled = "false"일 때 색상을 설정할 수 없습니다.
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_height="20dp"
android:gravity="left|center"
android:layout_width="wrap_content"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:background="@color/list_bg">
<ImageView
android:id="@+id/avatar"
android:layout_width="48dp"
android:layout_height="48dp"
android:layout_marginTop="10dp"
android:layout_alignParentLeft="true" />
<LinearLayout
android:orientation="vertical"
android:layout_width="wrap_content"
android:layout_height="48dp"
android:layout_toRightOf="@+id/avatar"
android:layout_marginLeft="10dp"
android:layout_marginTop="5dp">
<TextView android:id="@+id/listitem1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="2dp"
android:textColor="@drawable/textblack_selected"
android:textSize="18dp"
android:textStyle="bold" />
<TextView android:id="@+id/listitem2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="40dp"
android:textColor="@drawable/textorange_selected" />
</LinearLayout>
<ImageView
android:id="@+id/arrowImage"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="25dp"
android:layout_alignParentRight="true"
android:src="@drawable/arrow_selector" />
</RelativeLayout>
문제는이 (android:state_enabled="false"
을 체결하지 않을 것입니다 :이를 위해
나는이 textorange_selected.xml했다 :
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="false"
android:color="@color/medium_gray" />
<item android:state_selected="true"
android:color="@android:color/white" />
<item android:state_focused="true"
android:color="@android:color/white" />
<item android:state_pressed="true"
android:color="@android:color/white" />
<item android:color="@color/lighter_orange" />
</selector>
을 나는 행의 레이아웃에 사용 항목이 비활성화되고 텍스트의 색상을 회색으로 설정하는 순간이어야합니다).
@Override
public boolean areAllItemsEnabled() {
return false;
}
@Override
public boolean isEnabled(int position) {
return position < 1;
}
어디에 내 실수 : 내 어댑터에서이 코드를 사용하는 항목을 비활성화에 대한
?
Java에서 TextView를 사용 중지 하시겠습니까? –
내 편집을 참조하십시오. ListView의 항목을 비활성화하는 코드를 작성했습니다. 나는 안드로이드에서 작동합니다. – Gabrielle
relativelayout이 비활성화되어 있으며, textview가 확실하지 않습니다. duplicateParentState를 사용하여 비활성화 된 상태를 textview로 전달할 수 있습니다. – njzk2