android - 以编程方式从 LinearLayout 中删除 TextView 时出现问题

标签 android refresh textview android-linearlayout

我正在以编程方式将 TextView 添加到 LinearLayout,并在触摸时删除它们。一切正常,除非触摸最后一个 TextView 时它不会被删除。如果我在屏幕上做任何其他事情,比如摆脱键盘或完全向下滚动,最后一个 TextView 将被删除,这让我认为这是一个刷新问题,但我不知道如何解决。

这是我使用的一些代码:

final TextView tv1 = new TextView(this);
tv1.setText("Test");

tv1.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {

        linearlayout1.removeView(tv1);

    }
});

我也添加了这段代码来尝试解决问题,但它没有改变任何东西:

if (linearlayout1.getChildCount() == 1) {
    linearlayout1.removeAllViewsInLayout();
}

最佳答案

这听起来更像是 Android 中的一个错误,但您可以尝试的一件事是在删除之前隐藏您的 TextView:

tv1.setVisibility(View.GONE)

或者您可以添加:

linearlayout1.invalidate()

在删除最后一个项目后触发重绘。

关于android - 以编程方式从 LinearLayout 中删除 TextView 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5934642/

相关文章:

android - 如果没有 @Inject 构造函数或来自 @Provides- 或 @Produces- 注释的方法,则不能提供改造

android - 如何使用 Yarn 创建 React Native 项目?

javascript - 刷新后持久化数据

Jquery tabs cookie 使用现有脚本

android - 如何在android的 TextView 中对长文本进行文本换行

android - 使用 Metadata.xml 重命名公共(public)事件

android - 检测是否从 Play 商店安装了应用

android - 如何在 onReceivedError 后恢复刷新的 Web View

swift - 根据是否是第一响应者设置 TextView 的背景颜色

安卓输出错误。 TextView 不会显示输出