我想在单击按钮时向我的应用添加编辑文本字段,但我不会更改布局。只需将其添加到xml文件定义的现有文件下面即可。 假设我有一个联系人应用程序,如果用户需要添加一个额外的字段按下按钮并创建一个! 怎么做?
答案 0 :(得分:5)
在您的布局中保留一个EditText项目,并将其可见性设置为消失。
<EditText android:visibility="gone" android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
然后在按钮的onClick事件上设置对可见的可见性。
或
您可以通过编程方式添加EditText项目。
将LinearLayout添加到xml。
<LinearLayout
android:id="@+id/editTextGroupLayout"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
</LinearLayout>
按钮点击事件以编程方式添加EditText。
LinearLayout linearLayout = (LinearLayout) findViewById(R.id.editTextGroupLayout);
EditText editTextView = new EditText(this);
editTextView.setGravity(Gravity.CENTER);
LayoutParams params = new LayoutParams(LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT, 1);
editTextView.setLayoutParams(params);
linearLayout.addView(editTextView);
希望这会有所帮助。
答案 1 :(得分:1)
你可以做的是在面板中放置那些EditText,即将它们分组在面板中,然后有一个按钮,然后在按钮上单击创建EditText的实例并将其添加到相关面板。这样您就不会限制自己只能添加一个面板,而是仅限于用户想要添加的面板。
答案 2 :(得分:0)
首先,您从Web服务调用数据。
例如: description = Parser.getDescription;
在xml布局中:
<Button android:id="@+id/button" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:onClick="@string/ButtonClick"/>
<EditText android:id="@+id/note" android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
代码:
ButtonName = (Button)findViewById(R.id.note);
Data = (EditText)findViewById(R.id.note);
public void ButtonClick(View v){
description = Parser.getDescription;
Data.settext(description);
}