0

カスタムリストビューを作成し、そのアダプターを作成しました。カスタムリストビュー内のさまざまなビューのさまざまなスタイルの側面をプログラムで変更できるようにしたいと考えています。私のカスタム リストビューは、内部に TextViews を持つ RelativeLayout です。私は運がないので、次のことを試しました。エラーも何もありません。

View myView = adapter.getView(position, null, null);

myView.setBackgroundColor(Color.parseColor("#93E6CD"));       
myView.findViewById(R.id.layout).setBackgroundColor(Color.parseColor("#93E6CD"));
adapter.notifyDataSetChanged();

ここに私のカスタムリストビューがあります

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:padding="5dip"
    android:id="@+id/layout">


    <!-- Title-->
    <TextView
        android:id="@+id/primaryTitle"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Loading..."
        android:textColor="#040404"
        android:typeface="sans"
        android:textSize="18dip"
        android:textStyle="bold"/>

    <!-- Secondary title -->
    <TextView
        android:id="@+id/secondaryTitle"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_below="@id/primaryTitle"
        android:textColor="#343434"
        android:textSize="12dip"
        android:layout_marginTop="1dip"
        android:text="" />

    <!-- Rightend Data -->
    <TextView
        android:id="@+id/rightData"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"
        android:layout_alignTop="@id/primaryTitle"
        android:gravity="right"
        android:text=""
        android:layout_marginRight="5dip"
        android:textSize="12dip"
        android:textColor="#B53021"
        android:textStyle="bold"/>

</RelativeLayout>
4

1 に答える 1

0

詳細情報を提供していただくまで、先に進むことはできません。

ListView を正しく設定していないと思われます。データベースの行など、類似したアイテムのリストを表示しようとしていますか? もしそうなら、ListView オブジェクトの定義をコードまたは XML で確認したいと思います。アダプターの定義も知りたいです。ListView の ListAdapter を定義したようですが、ListAdapter を支えているものも知りたいです。

この線

myView.findViewById(R.id.layout).setBackgroundColor()

不審に見える。myView の子ビューを探しているようですが、この子ビューを定義した場所がわかりません。

通常、ListView を UI レイアウト ファイル全体の一部として定義し、ListView 内の 1 つの項目を定義する個別の項目レイアウトを定義してから、データ ソースを ListView に適合させます。

于 2013-04-11T23:57:11.490 に答える