0

レイアウトのクリックで背景画像と TextView の色を変更したい。背景色は適切に変更されていますが、テキストビューの色は変更されていません。

<RelativeLayout
        android:id="@+id/flight_relative"
        android:clickable="true"
        android:layout_width="match_parent"
        android:layout_height="70dp"
        android:layout_below="@+id/imgLogo"
        android:layout_marginTop="5dp"
        android:background="@drawable/button_effect"
        android:gravity="center_vertical" >

        <TextView
            android:id="@+id/flight_content"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignTop="@+id/flight_list_image"
            android:layout_marginTop="10dp"
            android:layout_toRightOf="@+id/flight_list_image"
            android:text="@string/flight_tittle"
            android:textColor="#152b72"
            android:textSize="15dp"
            android:textStyle="bold" />

        <TextView
            android:id="@+id/content_flight"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_below="@+id/flight_content"
            android:layout_toRightOf="@+id/flight_list_image"
            android:text="@string/flight_content"
            android:textColor="#2f2f2f"
            android:textSize="10sp" />

        <ImageView
            android:id="@+id/flight_arrow"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignBottom="@+id/flight_content"
            android:layout_alignParentRight="true"
            android:src="@drawable/arrow" />

        <ImageView
            android:id="@+id/flight_list_image"
            android:layout_width="50dip"
            android:layout_height="50dip"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:padding="3dip"
            android:src="@drawable/flight_icon" />

    </RelativeLayout>

テキストビューの色を変更するコードは次のとおりです。

flightRelative = (RelativeLayout )findViewById(R.id.flight_relative);
        flightRelative.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                flight = (TextView)findViewById(R.id.flight_content);
                flight.setTextColor(Color.WHITE);

            }
        });

私が何を間違っているのか教えてください。初めては機能しませんが、2回目は機能します

4

2 に答える 2

1

これは間違いなく機能していることを追加する必要があります。私もチェックしています...

flightRelative.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View arg0) {
       TextView flight = (TextView)findViewById(R.id.flight_content);
       flight.setTextColor(Color.parseColor("#FFFFFF"));

    }
});
于 2013-07-26T07:30:42.707 に答える
0

あなたが使用する必要があります

        @Override
        public void onClick(View arg0) {
            flight = (TextView)flightRelative.findViewById(R.id.flight_content);
            flight.setTextColor(Color.WHITE);

        }

私はそれが今うまくいくはずだと信じています。

于 2013-07-26T06:44:18.137 に答える