2012-11-05 3 views
2

TextView에 대한 정말 바보 같은 문제를 알아낼 수 없습니다! ButtonTextView의 간단한 레이아웃이 있습니다. 이 레이아웃입니다 :Android : TextView에 포커스가 적용되지 않음

<Button 
    android:id="@+id/button1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_alignParentTop="true" 
    android:text="Button1" /> 

<TextView 
    android:id="@+id/textView1" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:layout_alignParentLeft="true" 
    android:layout_below="@+id/button1" 
    android:focusable="true" 
    android:clickable="true" 
    android:text="TextView1" 
    android:textAppearance="?android:attr/textAppearanceMedium"/> 

때 버튼에 포커스가 나는 이유는 텍스트 뷰가 포커스를 취득하지 않습니다 에뮬레이터에서 "아래쪽 화살표"(이 !! 파란색으로하지 않습니다)를 누르면? 도와주세요 !!

+1

왜 TextView가 포커스를 얻길 원합니까? –

+1

'TextView'를 포커스 가능하게 만들고 싶습니까? – sankettt

+0

beacause 앱이 터치가 아닌 기기 용으로 개발되었으며 TextView를 클릭 할 수 있어야합니다 (하지만 버튼을 사용하고 싶지 않습니다!) !! – user1709805

답변

4

TextView가 파란색으로 변하지 않더라도 초점이 맞춰지고 있습니다.

예를 들어, 텍스트에서 색상 변경을 정의 할 수 있습니다. 이런 식으로 이러한 이벤트는 사용자에게 인식됩니다.

.xml 파일을 만들고/res/color/ 에 넣으십시오. 필자의 경우 파일 이름을 "color_text_view.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="#00FF00"/> 
     <item android:color="#FF00FF"/> 
    </selector> 

그리고 텍스트보기에 android:textColor="@color/color_text_view"을 추가하십시오.

<TextView 
android:id="@+id/textView1" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:layout_alignParentLeft="true" 
android:layout_below="@+id/button1" 
android:focusable="true" 
android:clickable="true" 
android:text="TextView1" 
android:textAppearance="?android:attr/textAppearanceMedium" 
android:textColor="@color/color_text_view"/> 

희망이 도움이 되셨습니다.

+0

Renato 고맙습니다. 당신은 나를 아주 많이 도와줍니다. (장래에 나에게 매우 유용 할 것입니다.)하지만 TextView의 배경을 바꾸고 싶습니까? 배경으로 textColor를 대체하려고하지만 런타임 오류가 발생합니다.이 트릭을 사용하여이 작업을 수행 할 수있는 방법이 있습니까? – user1709805

+0

이 작동하는지 모르겠지만 좀 봐 : http://stackoverflow.com/questions/2217753/changing-background-color-of-listview-items-on-android –

+0

다른 somethig 찾을 경우, 나는 너 알려줘. –

0

참고 텍스트를 포커스로 설정할 수있는 경우 code is true을 참조하십시오. 텍스트가 초점 모드이지만 색이 바뀌지 않습니다.

색상을 변경하면 XML로 포커스를 설정할 수 있으므로 직접 설정됩니다. 그래서 응용 프로그램을 시작할 때 TextView는 이미 초점 모드에 있으므로 색상이 변경됩니다.

관련 문제