在Android中以编程方式生成编辑文本

Raj*_*mar 13 android android-edittext

我正在开发联系人应用程序,它会添加电子邮件地址,电话号码.我必须在代码本身动态创建编辑文本.我不知道如何以及在何处实施这一逻辑,建议任何帮助都会感激不尽.

Eri*_*ric 22

您可以像这样创建它:

EditText myEditText = new EditText(context); // Pass it an Activity or Context
myEditText.setLayoutParams(new LayoutParams(..., ...)); // Pass two args; must be LayoutParams.MATCH_PARENT, LayoutParams.WRAP_CONTENT, or an integer pixel value.
myLayout.addView(myEditText);
Run Code Online (Sandbox Code Playgroud)

这可以在UI线程的任何地方实现; 点击监听器,onCreate方法以及介于两者之间的所有内容.

这个问题中有一个更通用的例子,并且在这篇博客中对这些过程进行了很好的概述.


Dip*_*iya 9

使用下面的代码以编程方式添加Edittext,它将解决您的问题.

RelativeLayout mRlayout = (RelativeLayout) findViewById(R.id.mRlayout);
RelativeLayout.LayoutParams mRparams = new RelativeLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
EditText myEditText = new EditText(context);
myEditText.setLayoutParams(mRparams);
mRlayout.addView(myEditText);
Run Code Online (Sandbox Code Playgroud)