如何删除动态添加的 TextView

所以我有一段代码,我在用户点击按钮时创建了一个 textView 。由于它是在运行后创建的,因此我不确定 ID 是什么。但是我想要做的是可以选择删除添加的最后一个 textView 并清除所有添加的 TextView。谢谢


private TextView createNewTextView(String text)

    {

        ArraySize++;

        final LinearLayout mLayout=findViewById(R.id.linearLayout);

        String newLine=System.getProperty("line.separator");

        final LinearLayout.LayoutParams lparams =new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);

        ViewGroup.LayoutParams params=(RelativeLayout.LayoutParams) mLayout.getLayoutParams();

        final TextView textView=new TextView(this);

        textView.setLayoutParams(lparams);

        textView.setText("New texT:: "+text+newLine);

        listOfNames.add(text);

        return textView;

    }


慕码人8056858
浏览 396回答 3
3回答

一只斗牛犬

您removeViewAt与索引一起使用final LinearLayout mLayout=findViewById(R.id.linearLayout)mLayout.removeViewAt(mLayout.getChildCount()-1); // get the last view//or using index counter variable//mLayout.removeViewAt(ArraySize-1); // adjust the value accordingly或者您可以使用removeView获取视图并删除它final LinearLayout mLayout=findViewById(R.id.linearLayout)View v = mLayout.getChildAt(mLayout.getChildCount()-1);mLayout.removeView(v);

慕慕森

您可以在此路径 res/values/ids.xml 中创建一个 XML 文件;<?xml version="1.0" encoding="utf-8"?><resources>&nbsp; &nbsp; <item name="view_1" type="id"/></resources>然后在 Java 中添加 id,就像这样textView.setId(R.id.view_1);当你想删除它时LinearLayout mLayout=findViewById(R.id.linearLayout);//to find in this specific viewTextView textView = (TextView)mLayout.findViewById(R.id.view_1);mLayout.removeView(textView);

温温酱

正如在这个问题中提到的,你可以简单地使用((ViewGroup)&nbsp;textView.getParent()).removeView(textView);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java