我正在尝试在应用程序运行时添加 EditText 小部件,但我不知道该怎么做。我希望这是可能的。我想要做的是用户将从微调器列表中选择一项,然后会出现一个编辑文本。例如,微调器包含人类外观的属性,用户可以决定是否要添加“头发形状”或“眼睛颜色”EditText 字段或微调器中的任何内容。
我做了下面的代码,但是当我尝试从微调器中选择项目时没有任何反应。
public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
long arg3) {
switch(arg1.getId())
{
case R.id.parametersChoose:
LinearLayout test = (LinearLayout) findViewById(R.id.test);
EditText field = new EditText(this);
LayoutParams b = new LayoutParams(50, 30);
field.setLayoutParams(b);
field.setText("enter" + parametersChoose.getSelectedItem().toString());
switch(parametersChoose.getSelectedItemPosition())
{
case 1:
field.setId(1);
}
test.addView(field);
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
xmlns:android="http://schemas.android.com/apk/res/android">
<Button
android:id="@+id/addWorkOut"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="save" />
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Set new Exercise type" />
<EditText
android:id="@+id/newExercise"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:ems="10" >
</EditText>
<Spinner
android:id="@+id/workOutChoose"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<Spinner
android:id="@+id/parametersChoose"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
<ScrollView
android:id="@+id/scroll"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
<LinearLayout
android:id="@+id/test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="vertical" >
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:ems="10" >
</EditText>
</LinearLayout>
</ScrollView>
></LinearLayout>