0

我有一个很小的线性布局,我必须在其中放置一个 imageView 和一个 textView。我知道这是制作应用程序的一种糟糕的方式。我只是想测试一下这是否可行。下面的代码只显示 imageview 而不是 textView。有任何想法吗?

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <LinearLayout
        android:layout_width="90dp"
        android:layout_height="90dp"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="TextView" />

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="0"
            android:src="@drawable/my_icon" />
    </LinearLayout>

</LinearLayout>
4

4 回答 4

3

答案最终是给 textView 的权重为 0,给 imageView 的权重为 1。这样,textView 完美地显示出来,但只占用了所需的空间,而 imageView 占用了其余的空间。完美1

于 2012-08-13T06:51:05.783 回答
0

这取决于您希望它看起来像什么。如果您希望将 LinearLayout 分成两半,那么在您的 ImageView 集中

android:layout_weight="1"

LinearLayout 内的视图与它们成比例地获得空间,layout_weight因此如果您的 ImageView 拥有layout_weight="0"它将获得 0 比例的视图。

于 2012-08-13T06:29:05.597 回答
0

你应该使用这样的重量:

线性布局中的 android:layout_weight="2"

和 imageView 和 textView 中的 layout_weight="1"

这样你的两个视图都会占据一半的空间

于 2012-08-13T06:42:07.790 回答
0

请试试这个

<TextView
            android:id="@+id/textView1"
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:text="TextView" />

        <ImageView
            android:id="@+id/imageView1"
            android:layout_width="wrap_content"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:src="@drawable/my_icon" />
于 2012-08-13T07:17:28.147 回答