Android输出错误。 TextView不会显示输出

时间:2011-12-05 00:09:51

标签: android loops textview

package com.culligandev.www;

import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;

public class threeRows extends Activity {

    TextView display;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.output);
        display = (TextView) findViewById(R.id.tvDisplay);

        int a = 3;

        for(int i = 0; i < a; i++) {
            for(int j = 0; j <= i; j++) {
                display.setText("*");
            }
            display.setText("");
        }
    }
}

通过按下按钮调用此活动,然后输出由星号组成的三角形,如下所示:

*
**
***

它不输出任何内容,只显示一个空白屏幕。你能帮忙吗?

4 个答案:

答案 0 :(得分:1)

你的“for”有问题。你的应用程序将做的最后一件事是display.setText(“”),这意味着你的文本将是空的。你应该加上像

这样的东西
display.setText(display.getText() + "\n");

另一个:

display.setText(display.getText() + "*");

答案 1 :(得分:1)

setText不能用作printf或println

如果要显示模式,则可以使用StringBuilder或StringBuffer来完成 然后在setText中使用该字符串缓冲区/构建器对象来显示模式

答案 2 :(得分:0)

TextView.append可能就是您所追求的,或者按照建议使用StringBuilder

答案 3 :(得分:0)

试试这个:

for(int i = 0; i < a; i++) {
      for(int j = 0; j <= i; j++) 
      {
                display.setText(display.getText().toString().trim()+"*");
      }
      display.setText(display.getText().toString().trim()+"\n");
}