Java TextView不添加新行

Java TextView不添加新行,java,android,Java,Android,我有: class ccProfile{ private String issuer, name, cardnum, expire; private Double bal, limit; //getters and setters 在creditCard.java中。在我的主要活动中,我使用了一个switch语句来设置我拥有的数组中的所有元素。我试图将它们全部打印到文本视图中,但我似乎无法将它们打印到单独的行中 设置数据的示例: ccProfile ccObj1 = n

我有:

class ccProfile{
    private String issuer, name, cardnum, expire;
    private Double bal, limit;
    //getters and setters
在creditCard.java中。在我的主要活动中,我使用了一个switch语句来设置我拥有的数组中的所有元素。我试图将它们全部打印到文本视图中,但我似乎无法将它们打印到单独的行中

设置数据的示例:

ccProfile ccObj1 = new ccProfile();
// . . . . . . . . 
case 2:
    ccObj1.setCardnum(data[z]);
    z++;
    break;
以下是我打印的方式:

tv1.setText(ccObj1.getIssuer() + "\n");
tv1.setText(ccObj1.getName()+"\n");
tv1.setText(ccObj1.getCardnum()+"\n");
tv1.setText(ccObj1.getExpire()+"\n");
sD = Double.toString(ccObj1.getBal());
tv1.setText(sD+"\n");
sD = Double.toString(ccObj1.getLimit());
tv1.setText(sD+"\n");

它所做的一切都是打印最后一个值,这会给您带来什么?

您正在使用的设置新文本并替换任何现有文本的方法。它会在每次通话中覆盖您的文字。您正在查找哪些追加了文本。

每次调用setText()时,您都会删除以前存在的内容。如果要将TextView的值设置为所有字符串,请尝试使用StringBuilder

StringBuilder sb = new StringBuilder();
sb.append("string 1 \n");
sb.append("string 2");
tv1.setText(sb.toString());
setText()覆盖TextArea以前的所有内容

    tv1.setText(ccObj1.getIssuer() + "\n" 
      +ccObj1.getName()+"\n"
      +ccObj1.getCardnum()+"\n" 
      +ccObj1.getExpire()+"\n"
      +Double.toString(ccObj1.getBal())+"\n"
      +Double.toString(ccObj1.getLimit()+"\n");

将为您提供所需的结果

setText()清除textview的值,并将其替换为您提供的任何参数。谢谢,我应该知道。。。有更好的方法吗?