将Edittext动态添加到现有editText下的相对布局

时间:2013-01-17 08:52:10

标签: android android-layout android-edittext

我正在尝试动态地向相对布局添加editText。布局已包含editText。我需要在现有的editText下添加新的EditText designation1 = new EditText(context); designation1.setHint("designation"); designation1.setSingleLine(true);

layoutExp = 
    (RelativeLayout) childView.findViewById(R.id.relative_layout_edit_exp);

我的布局是

designation = (EditText)childView.findViewById(R.id.editTextDesignatn);

我现有的编辑文字是

{{1}}

2 个答案:

答案 0 :(得分:3)

您需要使用RelativeLayout.LayoutParams并指定addRule(RelativeLayout.BELOW, ...)的相对位置(这是android:below XML属性的程序化等效项):

RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.MATCH_PARENT, RelativeLayout.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.BELOW, R.id.editTextDesignatn);
layoutExp.addView(designation1, params);

答案 1 :(得分:0)

如果您在现有的EditText下设置了一个LinearLayout,则可以。为此LinearLayout提供一个ID,然后您可以将动态EditText添加到此LinearLayout,如

    YourLinearLayout.addView(YourDynamicEditText);