【发布时间】:2021-09-07 22:37:59
【问题描述】:
我想避免在其他编辑文本上设置文本。 我想设置我单击editext的警报列表对话框项目的文本。
你可以从上面的图片中理解我的问题。我无法设置必须设置的文本。我想在第一个 edittext 上设置文本,但值是在最近创建的视图上设置的。
这是我的代码
public class MainActivity2 extends AppCompatActivity
{
LinearLayout parent_linear_layout;
EditText editText;
String value;
Button add;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
parent_linear_layout = findViewById(R.id.parent_linear_layout);
add = findViewById(R.id.button_add);
add.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
addView();
}
});
}
private void addView()
{
View view = getLayoutInflater().inflate(R.layout.row_add_language2, null, false);
parent_linear_layout.addView(view);
editText = view.findViewById(R.id.et_name2);
editText.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View view)
{
simpleDialog();
}
});
}
public void simpleDialog()
{
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setTitle("Select names");
String[] array = getResources().getStringArray(R.array.language);
builder.setSingleChoiceItems(array, -1, new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialogInterface, int i)
{
value = array[i];
}
});
builder.setPositiveButton("Add", new DialogInterface.OnClickListener()
{
@Override
public void onClick(DialogInterface dialogInterface, int i)
{
editText.setText(value);
}
});
builder.create();
builder.show();
}
}
【问题讨论】:
-
不,先生,我认为我们无法从图像中理解您的问题。请更详细地描述问题。请同时包含 activity_layout 文件。
-
当您调用 addView() 时,您会替换之前的任何 editText。
-
有什么解决办法
标签: android android-studio view android-edittext