我正在创建一个Android用户表单。我希望在点击按钮时显示编辑文本框,同时,要将原来位于按钮下方的内容向下移动。
如何实现?
我正在创建一个Android用户表单。我希望在点击按钮时显示编辑文本框,同时,要将原来位于按钮下方的内容向下移动。
如何实现?
//xml file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/btn"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Button"
/>
<EditText
android:id="@+id/edtbox"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
//Activity
//oncreate
editText.setVisibility(View.GONE);
btn..setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
editText.setVisibility(View.VISIBLE);
}
});
在您的布局中定义视图,然后在代码中使用myView.setVisibility(View.VISIBLE)
和myView.setVisibility(View.GONE)
显示和隐藏它。
在xml文件中定义你的EditText并将其隐藏起来。当按钮点击时,改变它的可见性为View.Visible。
YourEditText.setVisibility(View.GONE);
btn.setOnClickListener(new View.OnClickListener()
{
public void onClick(View v)
{
YourEditText.setVisibility(View.VISIBLE);
}
});
<RelativeLayout android:id="@+id/templayout">
<Button android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="add"/>
如果您想在TextView后添加EditText控件,然后在按钮单击时:RelativeLayout relativeLayout = (RelativeLayout)findViewById(R.id.templayout);
RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT);
params.addRule(RelativeLayout.BELOW, R.id.title);
EditText yourEditText = new EditText(this);
relativeLayout.addView(yourEditText, params);