-1

double 値を TextView に割り当てるにはどうすればよいですか? これはコードです:

if(condition()) {

    TV=(TextView)view.findViewById(R.id.textView); 
    TV.setText(Html.fromHtml("<b>TEXT 01 </b>"));

}
else {
    TV=(TextView)view.findViewById(R.id.textView); 

    TV.setText(Html.fromHtml("<b>TEXT 02</b>"));

}

if(condition) {
    TV=(TextView)view.findViewById(R.id.textView); 

    TV.setText(Html.fromHtml("TEXT 03"));

}
else {
    TV=(TextView)view.findViewById(R.id.textView); 

    TV.setText(Html.fromHtml("TEXT 04"));

}

アプリケーションを実行し、両方の条件が true の場合、最後に書かれた単語 TEXT 03 のみを視覚化するため、返されます。TEXT 01 も表示するにはどうすればよいですか?

4

2 に答える 2

0

同じものを使用していTextViewます。2 番目を作成するTextViewか、必要な を追加する必要がありStringます。

    if(condition()) {

        TV=(TextView)view.findViewById(R.id.textView); // each time you call this you reintializ
                                                   // the TextView then set new text to it
                                                   // you don't append the text
        TV.setText(Html.fromHtml("<b>TEXT 01 </b>"));

   }
    else {
        TV=(TextView)view.findViewById(R.id.textView); 

        TV.setText(Html.fromHtml("<b>TEXT 02</b>"));

    } 

    if(condition) {
        TV=(TextView)view.findViewById(R.id.textView); 

        TV.setText(Html.fromHtml("TEXT 03"));

    }
    else {
         TV=(TextView)view.findViewById(R.id.textView); 

        TV.setText(Html.fromHtml("TEXT 04"));

  }

これをより簡単にするには、TextView一度初期化し、2 番目の条件でテキストを追加します。

TV=(TextView)view.findViewById(R.id.textView);
if (condition())
{
    TV.setText(Html.fromHtml("<b>TEXT 01 </b>"));
else
{
    TV.setText(Html.fromHtml("<b>TEXT 02</b>"));
}

if (condition)
{
    TV.append(Html.fromHtml("TEXT 03"));
}
else
{
    TV.append(Html.fromHtml("TEXT 04"));
}
于 2013-09-24T17:00:19.663 に答える
0

setText("TEXT 01") の後に setText("TEXT 03") を呼び出すと、両方とも true の場合に TEXT 03 が TEXT 01 を上書きするため、TextView には "TEXT 03" しか表示されません。たとえば、次のようにロジックを変更する必要があります。

if (condition1 && condition3) {
    tv.setText("TEXT 03" + "TEXT 01");
} 
于 2013-09-24T17:00:31.233 に答える