2017-04-15 10 views
1

各ListView行に左の色の枠線のみを表示するにはどうすればよいですか?各ListView行に左の色の枠線を表示する方法は?

私はユーザーの評判のために5度の計量器を持っていて、それぞれのリストビュー行の左端にそれぞれの色を表示したいと思います。このlink

みんなありがとう同様

!!

+1

具体的な問題を明確にしたり、詳細を追加して必要なものを正確に強調してください。現在書かれているとおり、あなたが求めていることを正確に伝えるのは難しいです。この質問を明確にするために[Ask]ページを参照してください。 –

+0

このような[リンク](http://imgur.com/a/Z2u76) – marcelofb

答えて

1

最も簡単な方法は、あなたの項目のレイアウトにダミーViewを作成することです。これにより、レイアウトをデータにバインドするときに背景の色を簡単に変更できます。このような何か:次に

<LinearLayout  
    xmlns:android="http://schemas.android.com/apk/res/android"> 
    <View 
     android:id="@+id/termometherIndicator" 
     android:height="match_parent" android:width="4dp" 
     android:background="@color/default_color" /> 
    <LinearLayout ....> 
     <!-- The rest of the item layout goes here --> 
    </LinearLayout> 
</LinearLayout> 

item_list_layout.xml

Idを使用しての背後にあるコードでビューの参照を取得し、何が必要に背景色を変更します。

1

アプリの一番左の部分にパネルを追加できます。このパネルでは、温度計の定義済み画像の1つを配置することができます。あなたは5レベルしか持っていませんか?値が変更されたら、温度計の対応するイメージを選択してGUIエレメントを読み込み、再描画します。

1

ListView行は水平LinearLayoutこと、およびTextViewのに続いて、最初の子として、最初にこれを含める必要があります。

<View 
android:id="@+id/reputationColor" 
android:layout_width="4dp" //Aproximately the size from your image 
android:layout_height="36dp" //About the size of a List Row, but less, as seen in your image 
android:layout_gravity="top" 
/> 

あなたは見つけることができ、あなたのListViewためCustomAdapterが必要になりますCustomAdapterインサイドhere

で完全な例は、あなたが

View reputationColor = (View)findViewById(R.id.reputationColor); 
switch (reputation) { 
case 1: 
reputationColor.setBackgroundColor(#ff0000); 
break; //Include other cases up to 5 
default: 
break; 
} 
でプログラム的に色を設定することができますCustomAdaptersの詳細については3210

、以下のWebサイトにアクセスしてください:

関連する問題