如何为TextView指定double值?这是代码:
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"));
}
如果我运行应用程序并且两个条件都为真,则返回,因为我只显示最后写的单词TEXT 03.如何查看TEXT 01?
答案 0 :(得分:0)
您正在使用相同的TextView
。您需要创建第二个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
初始化一次并将文本附加到第二个条件
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"));
}
答案 1 :(得分:0)
你只能在TextView上看到“TEXT 03”因为你在setText(TEXT 01“)之后调用了setText(”TEXT 03“),如果它们都是真的那么TEXT 03会覆盖TEXT 01。 您应该更改逻辑,例如:
if (condition1 && condition3) {
tv.setText("TEXT 03" + "TEXT 01");
}