如何在包含一个imageview和另一个线性布局时将线性布局拆分为两个相等的部分

时间:2018-04-21 09:15:30

标签: android android-layout

我想要一个水平线性布局,包括一个imageview和一个垂直线性布局,它们同样显示在屏幕上。

但是图像按钮需要超过相同的屏幕。我使用了重量,并为两者赋予了价值。

这是我的xml代码:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"

    android:gravity="right"
    android:weightSum="2">


    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_gravity="center_horizontal"
        android:layout_weight="1">

        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="وضعیت"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="نتیجه BMI "
            />

    </LinearLayout>

    <ImageView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/john"
        android:layout_weight="1"/>
</LinearLayout>

这是我的屏幕:

如何将页面分成两个相等的部分?

screenshot of app screen

3 个答案:

答案 0 :(得分:0)

0dplinearlayout

设置 imageview 的宽度
android:layout_width="0dp"

要获得相同的高度,请在两者中使用高度 match_parent

android:layout_height="match_parent"

你可以使用,

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    android:gravity="right">
   <LinearLayout
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:layout_gravity="center_horizontal"
        android:layout_weight="1">
       <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="وضعیت"
            />
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="نتیجه BMI "
            />

    </LinearLayout>

    <ImageView
        android:scaleType="fitXY"
        android:adjustViewBounds="true"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:src="@drawable/john"
        android:layout_weight="1"/>
</LinearLayout>

答案 1 :(得分:0)

 <LinearLayout
     android:layout_width="0dp"
     android:orientation="vertical"

和imageview

  <ImageView
     android:layout_width="0dp"

linearlayoutimageview的宽度更改为0dp而不是wrap_content

答案 2 :(得分:0)

试试这个

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



    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:background="@color/colorAccent"
        android:orientation="vertical">

        // put here all other control's  as per your requirement
    </LinearLayout>

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_weight="1"
        android:src="@color/colorPrimary" />



</LinearLayout>

<强> RESULT

enter image description here