Android 单击按钮后如何删除textview和edittext?
因为我有一个添加按钮,我可以添加一个文本视图和编辑文本。现在我的问题是,我想问一下,单击按钮后如何删除textview和edittext?删除textview和edittext的按钮名为“button removeStaff” 这是我的密码: _12_EventAssign.javaAndroid 单击按钮后如何删除textview和edittext?,android,android-linearlayout,Android,Android Linearlayout,因为我有一个添加按钮,我可以添加一个文本视图和编辑文本。现在我的问题是,我想问一下,单击按钮后如何删除textview和edittext?删除textview和edittext的按钮名为“button removeStaff” 这是我的密码: _12_EventAssign.java public class _12_EventAssign extends AppCompatActivity { LinearLayout linearL; View lineview; Button addS
public class _12_EventAssign extends AppCompatActivity {
LinearLayout linearL;
View lineview;
Button addStaff;
Button removeStaff;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity__12__event_assign);
getSupportActionBar().setTitle("Add Event: Information");
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
linearL = (LinearLayout)findViewById(R.id.add_staff);
lineview = findViewById(R.id.view1);
removeStaff = (Button)findViewById(R.id.btnaremovetaff);
removeStaff.setEnabled(false);
addStaff = (Button)findViewById(R.id.btnaddstaff);
addStaff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
removeStaff.setEnabled(true);
LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 100);
LinearLayout.LayoutParams params1 = new LinearLayout.LayoutParams(dpToPx(300), dpToPx(40));
TextView tv = new TextView(getApplicationContext());
EditText ed = new EditText(getApplicationContext());
params.setMargins(55, 25, 0, 0);
tv.setText("Department");
tv.setTextSize(25);
tv.setTextColor(Color.BLACK);
linearL.addView(tv, params);
tv.setLayoutParams(params);
params1.setMargins(dpToPx(35), dpToPx(7), 0, 0);
ed.setBackgroundColor(getResources().getColor(R.color.colorGray));
linearL.addView(ed, params1);
ed.setLayoutParams(params1);
}
});
}
public static int dpToPx(int dp)
{
return (int) (dp * Resources.getSystem().getDisplayMetrics().density);
}
}
我希望你能帮助我。谢谢大家! 要做到这一点,您只需执行以下操作:
removeStaff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
tv.setVisibility(View.Gone);
ed.setVisibility(View.Gone);
}
});
此代码从布局中删除电视和ed。您有对文本视图和编辑文本的本地引用。(电视、教育) 您可以将它们作为类的字段拉入。(把它们放在按钮下面) 然后在onClick侦听器中,使用class字段设置它们。而不是本地文本视图电视=
tv = new TextView(getApplicationContext());
为removeStaff创建onClickListener
removeStaff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
linearL.removeView(tv);
linearL.removeView(ed);
}
}
或者,如果可以从线性布局中删除所有内容,则可以简单地调用removeAllViews()
尝试管理textview和editText as on按钮的访问权限
removestaf.setOnClickListener(new View.OnClickListener(){@Override public void onClick(视图视图){tv.setVisibility(View.Gone);ed.setVisibility(View.Gone);}) 您想在单击按钮时删除编辑文本和文本查看电视吗?是。我该怎么做?
removeStaff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
linearL.removeView(tv);
linearL.removeView(ed);
}
}
removeStaff.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
linearL.removeAllViews();
}
}