android studio如果imageview没有图像,则在imageview下方显示textView

时间:2017-04-17 10:59:49

标签: java android android-layout textview imageview

我有一个imageView,它应该显示来自网址的个人资料图标。 但是可能会发生url没有图像,并且在这种情况下我希望在其下面有一个textview。 如果imageView是"空"用户应该能够在textView

中看到文本
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.user.lolstats.DisplayDataActivity">

<de.hdodenhof.circleimageview.CircleImageView xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/imgRound"
    android:layout_width="125dp"
    android:layout_height="125dp"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="10dp"
    android:background="#00000000"
    android:foregroundGravity="center"
    android:visibility="visible"
    app:border_color="#ffffff"
    app:border_width="10dp" />

<TextView
    android:layout_width="100dp"
    android:layout_height="100dp"
    android:layout_above="@+id/TVsummoerName"
    android:layout_centerHorizontal="true"
    android:layout_marginBottom="11dp"
    android:gravity="center"
    android:text="If you can read this your SummonerIcon isn't implemented yet." />

<TextView
    android:id="@+id/TVsummoerName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_below="@id/imgRound"
    android:gravity="center" />
</RelativeLayout>

2 个答案:

答案 0 :(得分:0)

您可以设置可见性

imageview.setVisibility(View.GONE); // visible / invisible acc to your need

答案 1 :(得分:0)

将ImageView放在另一个相对布局

<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context="com.example.user.lolstats.DisplayDataActivity">


        <RelativeLayout 
          android:layout_width="wrap_content"
          android:id="@+id/rl"
          android:layout_height="wrap_content">

        <de.hdodenhof.circleimageview.CircleImageView
         xmlns:app="http://schemas.android.com/apk/res-auto"
         android:id="@+id/imgRound"
         android:layout_width="125dp"
         android:layout_height="125dp"
         android:layout_centerHorizontal="true"
         android:layout_marginTop="10dp"
         android:background="#00000000"
         android:foregroundGravity="center"
         android:visibility="visible"
         app:border_color="#ffffff"
         app:border_width="10dp" />

    </RelativeLayout>


    <TextView
    android:id="@+id/TVsummoerName"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_centerHorizontal="true"
    android:layout_below="@id/rl"
    android:gravity="center" />
    </RelativeLayout>

TextView将位于相对布局下方 现在以编程方式设置imageView不可见

ImageView.setVisibility(View.INVISIBLE);