如何回调java中动态创建的元素?

How to call back a dynamically created element in java?

例如我有这段代码将创建 10 个动态对象 那我怎样才能给他们回电话(例如获取他们的价值,设置他们的价值等。)

for (int i = 1; i <= 10; i++) {
    EditText test = new EditText(this);
    test.setHint("Your Input Here");
    // etc...
    Layout.addView(test);
    // A layout that I already made in XML file
}

所以在创建它们之后我怎样才能得到它们的值,这些值将是我想将它们相加的数字......或者做其他事情。

您需要将它们存储在某个东西中。 在你的情况下,我会使用一个数组。

EditText[] tab = new EditText[11];
for (int i = 1; i <= 10; i++) {
    EditText test = new EditText(this);
    test.setHint("Your Input Here");

    tab[i] = test
    Layout.addView(test);

}

然后使用

访问它
tab[i]

PS : 对于你的 for 循环开始 i 在 0, 内存管理会更好

是的,最简单的方法是将它们存储在 Collection 中。另一种方法是在循环中调用 layout.getChildAt(position) 但是你会得到存储在这个 Layout 中的所有视图所以你需要通过以下方式检查这是什么类型的视图:

for (int position = 0; position < layout.getChildCount(); position++) {
    if (layout.getChildAt(position) instanceof EditText) {
        // some action
    }
}