2

私は本当に愚かな問題を理解することができませんTextView!! とが付いたシンプルなレイアウトがButtonあり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"/>

ボタンにフォーカスがあり、エミュレーターで「下矢印」を押すと、TextViewがフォーカスを取得しません(青色になりません!!)なぜですか?私を助けてください!!

4

2 に答える 2

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"/>

この助けを願っています!

于 2012-11-05T10:48:08.323 に答える
0

テキストをフォーカス可能なものとして設定する場合は、を参照してくださいcode is true。テキストはフォーカスモードですが、色を変更することはできません。

XMLでフォーカスを設定したため、色を変更すると直接設定されます。そのため、アプリの起動時にTextViewはすでにフォーカスモードになっているため、色が変わります。

于 2012-11-05T10:22:25.023 に答える