2014-12-14 4 views
0

내 탐색 창에 ListView가 있고 Playstore App 또는 Youtube App처럼 보이길 원합니다.색상 변경 onClick 및 배경에 초점

예를 들어 onClick을 빨간색으로 변경하는 onClick을 말하고 방금 누르면 배경이 회색으로 변합니다.

2 개의 onitemclicklistener를 사용해야합니까?

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
android:layout_width="match_parent" 
android:layout_height="48dp"> 

<ImageView 
    android:id="@+id/icon" 
    android:layout_width="25dp" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_marginLeft="12dp" 
    android:layout_marginRight="12dp" 
    android:contentDescription="@string/DrawerListIcon" 
    android:src="@drawable/ic_home" 
    android:layout_centerVertical="true" /> 

<TextView 
    android:id="@+id/title" 
    android:layout_width="wrap_content" 
    android:layout_height="match_parent" 
    android:layout_toRightOf="@id/icon" 
    android:textSize="14sp" 
    android:textStyle="bold" 
    android:minHeight="?android:attr/listPreferredItemHeightSmall" 
    android:textAppearance="?android:attr/textAppearanceListItemSmall" 
    android:textColor="@color/DrawerListFontColor" 
    android:gravity="center_vertical" 
    android:paddingRight="40dp" 
    android:paddingLeft="0dp"/> 
</RelativeLayout> 

항목 및 선택기로 시도되었습니다. 우선, 버튼을 눌렀을 때 글꼴 색이 바뀌지 않습니다. 두 번째로 상대 레이아웃의 배경이 회색 회색으로 변합니다.

drawer_list_font.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item 
    android:state_focused="true" 
    android:color="@color/DrawerListFontColorPressed" 
    /> 
<item android:color="@color/DrawerListFontColor"/></selector> 

drawer_list_background.xml

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item 
    android:state_focused="true" 
    android:color="@color/DrawerListBackgroundFocused" 
    /> 
<item 
    android:color="@color/DrawerBackground" 
    /></selector> 

내가 안드로이드 사용했다 : 상대적 레이아웃에 당김 대신 배경. Textview Android Stuio에서 android : color를 허용했습니다.

답변

0

이것은 모든 클릭 이벤트에서 ur java 파일의보기를 변경하여보기를 변경할 수 있습니다. U는 다중보기 즉 XML 파일을 만들어야합니다. 어느 동적으로 변경되거나 함수에 매개 변수를 보낼 수도 런타임에 xml을 만들 수 있지만 너무 깊은 U에 대한 것입니다

0

전혀 수신기가 필요하지 않습니다. 더 나은 접근법은 모든 상태 ("pressed", "focused"등)에 대한 정의가있는 drawable XML을 만드는 것입니다. 예를 들어 Color State List resources

을 확인 :

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_focused="true" android:state_pressed="false"android:color="#80000" /> 
    <item android:state_focused="true" android:state_pressed="true" android:color="#ff0000" /> 
    <item android:state_focused="false" android:state_pressed="true" android:color="#ff0000" /> 
    <item android:color="@color/DrawerListFontColor" /> 
</selector> 
+0

확인 감사합니다. 이것은 내가 찾고있는 것이었다. 불행히도 그것은 그렇게 잘 작동하지 않습니다. 무엇이 잘못되었는지 말해 줄 수 있어요. 내 첫 번째 게시물을 참조하십시오. – Nick