アプリの実行中に EditText ウィジェットを追加しようとしていますが、その方法がわかりません。それが可能であることを願っています。私がやりたいことは、ユーザーがスピナー リストから 1 つの項目を選択すると、編集テキストが表示されることです。たとえば、スピナーには人間の外観のプロパティが含まれており、ユーザーは「髪の形」または「目の色」の 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>