TextView在运行时扩展

时间:2019-01-08 16:53:51

标签: java android xml

我有一个文本框和此TextVIew的ImageView权限。如果图像网址不可用,我将使该图像视图的可见性变为“消失”。现在,我想将TextView的宽度扩展到MatchParent。但是它不起作用。出了点问题,我无法解决。需要帮忙。代码如下...

我尝试了StackOverflow中的所有解决方案,但确实无法正常工作。

请帮助。

                if (ImageURL.equals(null)){
            holder.Image.setVisibility(View.GONE);
//            RelativeLayout.LayoutParams layoutParams = (RelativeLayout.LayoutParams)
//            holder.question.setLayoutParams();
//            layoutParams.width = RelativeLayout.LayoutParams.MATCH_PARENT;
            holder.question.setLayoutParams(new ViewGroup.LayoutParams(
                    ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT));
//            holder.question.setLayoutParams(layoutParams);
        }

2 个答案:

答案 0 :(得分:0)

尝试此代码,不需要设置布局参数

  

    <TextView
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="10"
        android:text="sadasdasdasdasdasdasdasdasdsadasdasd" />

    <ImageView
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:layout_weight="3"
        android:src="@mipmap/ic_launcher"
        android:visibility="visible" />
</LinearLayout>

答案 1 :(得分:0)

约束布局在这种情况下更加灵活。不再鼓励使用RelativeLayout

<androidx.constraintlayout.widget.ConstraintLayout
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">

    <TextView
            android:id="@+id/textView"
            app:layout_constraintTop_toTopOf="parent"
            app:layout_constraintEnd_toStartOf="@+id/imageView"
            app:layout_constraintStart_toStartOf="parent"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:text="Hello World!"/>

    <ImageView
            app:layout_constraintStart_toEndOf="@+id/textView"
            app:layout_constraintEnd_toEndOf="parent"
            app:layout_constraintTop_toTopOf="parent"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            tools:srcCompat="@tools:sample/avatars"
            android:id="@+id/imageView"
            android:layout_alignParentEnd="true"/>

</androidx.constraintlayout.widget.ConstraintLayout>

要使TextView占据整个宽度,只需将visibility的{​​{1}}更改为ImageView

GONE