我需要用户输入图形坐标。问题是,我不知道有多少。所以我想要一个“添加点”按钮,它将两个字段(用于x和y坐标)插入到一个新的表格行中,供用户添加更多的坐标。如何在Android中动态添加表格中的字段?
另外,当我想从他们那里获取数据时,如何识别这些新字段?通常,我已经知道该字段的ID并使用findViewById(R.id.ID_here)来调用它们;现在我该怎么做才能识别它们?
我正在将所有这些坐标写入文件,所以如果有一种方法可以在不识别每个坐标的情况下编写它们,请帮助。
编辑:
我不能得到的EditText字段有这些布局参数属性:
android:layout_width="0px"
android:layout_height="wrap_content"
android:layout_weight="1"
android:inputType="numberDecimal"
下面是同我的Java代码:
TableLayout table = (TableLayout) findViewById(R.id.TableLayout1);
TableRow tr = new TableRow(this);
LinearLayout.LayoutParams trparams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT);
tr.setLayoutParams(trparams);
cg[i] = new EditText(this);
weight[i] = new EditText(this);
LinearLayout.LayoutParams fieldparams = new LinearLayout.LayoutParams(100, LinearLayout.LayoutParams.WRAP_CONTENT, 1.0f);
cg[i].setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);
weight[i].setInputType(InputType.TYPE_NUMBER_FLAG_DECIMAL);
cg[i].setLayoutParams(fieldparams);
weight[i].setLayoutParams(fieldparams);
tr.addView(cg[i]);
tr.addView(weight[i]);
table.addView(tr);
请帮助,如果您可以。
谢谢。我面临的一个问题是:如果我尝试为edittext框设置布局参数,则它们不会在单击按钮时显示。我无法弄清楚为什么。我想edittext字段有这些参数:android:layout_width =“0px” android:layout_width =“wrap_content” android:layout_weight =“1” android:inputType =“numberDecimal”如果他们的layout_width = 0px请帮助 – ask 2012-01-30 15:04:39
将不可见! – 2012-01-30 15:53:58
谢谢。我找到了我正在寻找的答案。问题在于我使用LinearLayout而不是TableRowLayout作为布局参数。 – ask 2012-02-01 05:46:22