Android 如何通过编程将TextView更改为ImageView并返回

Android 如何通过编程将TextView更改为ImageView并返回,android,android-imageview,textview,Android,Android Imageview,Textview,我有一个XML布局,它定义了一个TextView框50px 320px,ID是TextView2 有时我想使用相同的TextView区域来显示图像。 我希望能够通过编程将该区域切换为TextView或ImageView <LinearLayout android:layout_width="320dp" android:layout_height="50dp" > <TextView android:id="@+id/textVi

我有一个XML布局,它定义了一个
TextView
框50px 320px,ID是
TextView2

有时我想使用相同的
TextView
区域来显示图像。
我希望能够通过编程将该区域切换为
TextView
ImageView

   <LinearLayout
    android:layout_width="320dp"
    android:layout_height="50dp" >

    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.35"
        android:text="      "
        android:textAppearance="?android:attr/textAppearanceLarge" />
    </LinearLayout>   

这里有两个选项:

  • 您可以根据特定条件设置textview的背景或随时设置文本

  • 当您希望图像集可见性为ImageView True和Textview GONE时,可以分别获取ImageView nd,而当您希望文本集可见性为Textview True和ImageView GONE时,可以分别获取ImageView nd


  • 只需在TextView的下方/旁边添加一个ImageView,并将android:visibility=“gone”设置为不想显示的

    还可以设置一个android:id=“@+id/some_identifier”,这样您就可以在代码中找到视图,并将TextView设置为view.GONE,将ImageView设置为view.VISIBLE(当您想要切换时)

    <LinearLayout
        android:layout_width="320dp"
        android:layout_height="50dp" >
    
        <TextView
            android:id="@+id/textView2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="0.35"
            android:text="      "
            android:textAppearance="?android:attr/textAppearanceLarge" />
    
        <ImageView
            android:id="@+id/image_view_1"
            android:visibility="gone"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    
    </LinearLayout>
    

    太棒了!谢谢我可以使用相同的方法设置一个区域来执行多个任务。我知道我可以用帆布。但很高兴看到还有另一种方法。