2010-11-18 31 views
1

私はプロジェクト用のゲームロビーを作成しようとしていますが、ゲームのステータステキストを「[進行中]」ゲームでは赤、「[IN PROGRESS]」ゲームでは緑、「[Waiting for xプレイヤー]」と表示されます。 ListViewにはデータが入力され、各ListViewアイテムにはゲームIDが割り当てられ、その直後にゲームのステータスが表示されます。ListView内のTextViewのテキストの色を動的に変更しますか?

今、私は基本的にHello ListViewコードを使用してListViewを作成しています。

(コンストラクタで)

ArrayList<HashMap<String, String>> gameList = new ArrayList<HashMap<String, String>>(); 
private ListView gamesListView; 
private SimpleAdapter gameItems. 

()(のonCreateで)

gamesListView = (ListView) findViewById(R.id.listViewGames); 
gameItems = new SimpleAdapter(this, gameList, R.layout.gamelistitem, 
    new String[] { "line1, "line2}, 
    new int[] { R.id.tvGameID, R.id.tvGameStatus }); 
gamesListView.setAdapter(gameItems); 

その後、私は私達のデータベースからデータを取得し、更新ボタンを持っています。 2つのストリングが得られます.1つはゲームのID、もう1つはゲームのステータスです。ゲームのステータスが0の場合、まだプレイヤーを待っています。ゲームのステータスが1の場合、ゲームが開始されました。ですから、gameListを作成してgameListに追加します:

HashMap<String, String> gameItem = new HashMap<String, String>(); 
gameItem.put("line1", gameIDString); 
gameItem.put("line2", renderGameStatus(gameStatusString)); 
gameList.add(gameItem); 
gameItems.notifyDataSetChanged(); 

private String renderGameStatus(String statusString) { 
    if (statusString.equals("0")) { 
     return "[Waiting for players]"; 
    } else { 
     return "[IN PROGRESS]"; 
    } 
} 

これは私が立ち往生した場所です。私は、gameItemを作成するとき、またはそれをgameListに追加するときに、特定のTextViewをどのように変更できるかわからない。 TextViewのプロパティにアクセスする方法はわかりません。文字列を "line1"と "line2"にマッピングすることによって、ビューのテキストがどのように設定されるのかを確認しますが、プロパティの変更方法はわかりません。

ありがとうございました!

答えて

1

正しい答えは、カスタムリストビューにそこに多くのチュートリアルの1に従うことであるのに役立ちます

TextView t = (TextView) findViewById(R.layout.yourTextView); 
t.setTextColor(color); 
t.setBackgroundColor(color); 

希望を行を作成し、ListView用のカスタムアダプタを使用します。Here's良い。

3

そうしようとした場合、あなたはXMLファイルで、あなたのTextViewを作成してください:?この質問への

+0

残念ながら、それはListViewのすべてのTextViewの色を変更するだけではありませんか?私はリストビュー内の各特定のTextViewの色を変更するために探しています。 – Rockmaninoff

+0

hmm今、私は理解しています。既に試してみましたかどうかはわかりませんが、作成したリストやものをフルコントロールするためにBaseAdapterを実装することについて覚えています。あなたはそれを見てください。がんばろう – dds

関連する問題