android - 在 Android 中动态添加和删除 TextView

标签 android arraylist android-framelayout viewgroup

我已经设置了一个 FrameLayout,它在 ListView 之上有一个 TextView。现在,在 MainActivity 中,执行一些代码后,我检查 ListView 是否为空。如果是,我显示 TextView,如果不是,我删除 TextView

代码如下:

ma​​in.xml 文件如下:

<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/flMain"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/tvAddItem"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:text="Add some subjects"
        android:textSize="20sp" />

    <ListView
        android:id="@+id/ItemsList"
        android:layout_width="match_parent"
        android:layout_height="0dip"
        android:layout_weight="1" />

</FrameLayout>

在 MainActivity 类中,我执行以下操作:

MainActivity.java

TextView tvNoItem = (TextView) findViewById(R.id.tvAddItem);
ListView subListView = (ListView) findViewById(R.id.itemsList);
FrameLayout fl = (FrameLayout) findViewById(R.id.flMain);

ArrayList<Item> itemsList;

//some code

if(itemsList.isEmpty()) {
    fl.addView(tvNoItem);
} else {
    fl.removeView(tvNoItem);
}

现在,当我运行它并向列表中添加一些项目时,TextView (tvNoItem) 确实被删除了。但我所看到的只是一个空白列表——列表项不可见。 [顺便说一句,列表工作正常。当我从 main.xml 中删除 TextView 时,我可以看到所有列表项。] 请帮忙。

最佳答案

    txtview.setVisibility(View.GONE) ;
    txtview.setVisibility(View.VISIBLE) ;

关于android - 在 Android 中动态添加和删除 TextView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17541340/

相关文章:

android - 有什么办法可以实现 Flutter 顶级小吃吧?

android - 谷歌语音识别库或 API

android - 滚动后在选择的网格项上获取空指针异常

java - 您如何检查列表是否包含与某些谓词匹配的元素?

java - 我如何更改此方法以使用 ArrayList?

android - Android Studio-从图库中选择图像

java - 为什么我随机选择的数字的输出包含重复项?

android - 字体调整不适用于 fragment 中的 Webview (FrameLayout)

java - 在框架布局中显示 Activity

android - FrameLayout to RelativeLayout ClassCastException 即使没有使用 FrameLayout