在android setText变量中编辑文本

在android setText变量中编辑文本,android,Android,早上好,我有个问题,想看看是否有人能帮我 我定义了许多textview TextView Casilla1 = (TextView) findViewById (R.id.TxtVCasilla1); TextView Casilla2 = (TextView) findViewById (R.id.TxtVCasilla2); TextView Casilla3 = (TextView) findViewById (R.id.TxtVCasilla3); TextView Casilla

早上好,我有个问题,想看看是否有人能帮我

我定义了许多textview

TextView Casilla1 = (TextView) findViewById (R.id.TxtVCasilla1); 
TextView Casilla2 = (TextView) findViewById (R.id.TxtVCasilla2); 
TextView Casilla3 = (TextView) findViewById (R.id.TxtVCasilla3); 
TextView Casilla4 = (TextView) findViewById (R.id.TxtVCasilla4); 
等等。。。最多42盒

文本,并希望完全根据此活动必须更改文本视图中文本的月份来更改其条件

for (int i = 1; i <30, i + +) {
             String x = "Casilla" + i; 
             x.setText (i); 
         } 
这将是一件事,如果什么是在里面认识他的setText。但它给了我错误

有办法做到这一点吗

我想要的是去textview重命名在仪表中定义的函数,将字符串作为变量加上当时的计数器编号。不知道如何识别结果字符串setText函数,并且可以使用计数器变量修改文本

如果你能理解我的话就不会了,因为我是通过翻译写的


原谅我的错误,因为我对这个论坛和android编程还不熟悉,我在这个论坛上咨询了很多,但今天是我第一次检查。

你使用的是一个糟糕的解决方案。但如果必须这样做,您可以参考如下文本视图:

for(int i=1; i<diasmes; i++) {       
    int txtViewId = getResources().getIdentifier("TxtVCasilla"+ i, "id", getPackageName());
    TextView tvCasilla=(TextView)findViewById(txtViewId);    
    tvCasilla.setText(i);
}

希望有帮助。

您可以将视图存储在阵列中:

TextView[] Casilla = new TextView[42];

Casilla[0] = (TextView) findViewById (R.id.TxtVCasilla1);
Casilla[1] = (TextView) findViewById (R.id.TxtVCasilla2);
// ...
然后通过其索引访问它们:

for (int i = 0; i < Casilla.length, i++) {
    Casilla[i].setText(""); 
}

仅提及替代方案,因为似乎不鼓励使用,并且在ListView中显示这些可能不是您想要的。没有任何迹象表明-42可能是一个固定数字,例如64可能是一个棋盘。

您可以将Id存储在一个数组中:

int[] Casilla  = new int[42];
Casilla[0] = R.id.TxtVCasilla1;
Casilla[1] = R.id.TxtVCasilla2;
Casilla[2] = R.id.TxtVCasilla3;
然后像这样设置文本

for (int i = 0; i < Casilla.length, i++) {
 TextView casillaTextView= (TextView) findViewById (id);
 casillaTextView.setText(i); 
 }

什么是diasmes?和String.setText???也许listview是比这段奇怪代码更好的解决方案?使用listview并动态设置文本。不要选择42文本视图42文本视图?糟糕的解决方案…我也会这么做的解决方案。我已经尝试过了,但我关闭了应用程序,但没有给我任何错误或编译代码。不,可能是错的。线路上的错误增加了。Casilla[i].setText;如果使用此循环,是否已初始化要访问的所有42个数组的每个元素。是否所有视图都实际找到findViewById对它们都不返回null?你得到的错误是什么?这条线给了我错误。TextView casillaTextView=TextView findViewById;该id以红色显示错误:173,64错误:找不到符号变量idTextView casillaTextView=TextView findViewById Casilla[i];