Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 以编程方式添加视图,然后引用这些视图。_Javascript_Android_Android Relativelayout - Fatal编程技术网

Javascript 以编程方式添加视图,然后引用这些视图。

Javascript 以编程方式添加视图,然后引用这些视图。,javascript,android,android-relativelayout,Javascript,Android,Android Relativelayout,我是java领域的新手,因此提前感谢您的帮助 我想做的是: 我有两个编辑文本字段和一个按钮。当我点击按钮时,我想获取这两个字段的内容,将它们合并并显示在按钮下方。字段已清除。然后,如果再次填充并按下按钮,则组合字段并将其显示在先前生成的textview下方 例如: 单击按钮之前: eT1_uuuuuuuuuuuuuuu124;按钮| 点击按钮后 eT1_uuuuuuuuuuuu124;按钮| eT1-eT2 点击第二个按钮后 eT1_uuuuuuuuuuuu124;按钮| eT1-eT2 eT1

我是java领域的新手,因此提前感谢您的帮助

我想做的是: 我有两个编辑文本字段和一个按钮。当我点击按钮时,我想获取这两个字段的内容,将它们合并并显示在按钮下方。字段已清除。然后,如果再次填充并按下按钮,则组合字段并将其显示在先前生成的textview下方

例如:

单击按钮之前: eT1_uuuuuuuuuuuuuuu124;按钮|

点击按钮后 eT1_uuuuuuuuuuuu124;按钮|
eT1-eT2

点击第二个按钮后 eT1_uuuuuuuuuuuu124;按钮|
eT1-eT2
eT1-eT2

等等,不管按钮被点击多少次。我需要帮助的是正在添加的新视图。目前我使用的是相对布局。我试图弄清楚的是如何引用我在代码中创建的新textView,以便在添加新视图时,它们可以引用以前添加的视图

这就是我目前一直在尝试的:

private TextView createNewTextView(字符串描述,双倍成本){
RelativeLayout.LayoutParams lparams=新的RelativeLayout.LayoutParams(LayoutParams.WRAP_内容,LayoutParams.WRAP_内容);;
TextView newTextView=新的TextView(此);
如果(i==1){
lparams.addRule(RelativeLayout.down,mButton.getId());
}
否则{
lparams.addRule(RelativeLayout.down,mLayout.getId());
}
lparams.addRule(RelativeLayout.ALIGN\u PARENT\u RIGHT);
setLayoutParams(lparams);
setText(desc+“-$”+成本);
newTextView.setTag(i);
i++;
返回newTextView;

}
只需将文本视图添加到全局列表中,并根据其中的标记查找它们。

创建
文本视图的
数组列表的
成员变量:

ArrayList<TextView> textviews = new ArrayList<>();
因此,您首先添加的
TextView
将位于索引0处,依此类推。然后,您可以轻松地引用您的
文本视图

假设要获取第二个
文本视图

TextView secondTv = textviews.get(1);

那么到底是什么问题呢?如果你清楚地说明错误所在,你就更有可能得到帮助。我正在尝试获取在第一次单击按钮时创建的新文本视图,该视图将显示在按钮下方。然后,在单击按钮时创建的所有后续文本视图将显示在上次创建的文本视图下方。这有意义吗?这对我来说似乎更好,但我仍然错过了一些东西。我的第一个创建的文本视图被完美地放置,但我的下一个文本视图显示在左上角,所有新创建的视图都被放置在彼此的顶部。这看起来正确吗?
code
lparams.addRule(RelativeLayout.BELOW,textviews.get(i-1).getId())“
code
现在就这么近了……我在
createNewTextView()中添加了
textviews.get(i).setId(i);
method。现在新的textView构建被放置在上一个textView的下方,第二个除外。当我第一次按下按钮时,新视图被放置在按钮下方,就像我想要的那样。下一次单击时,视图被添加到父视图的顶部下方。下一次单击时,视图被添加到上一个视图的下方。只需获取第二次点击动作正确,我就一切就绪。你能发布你的全部代码和你所做的更改吗。
TextView secondTv = textviews.get(1);