2016-12-07 102 views
-3

如何在RelativeLayout中并排排列两个视图? (非线性布局)Android Studio。 XML布局宽度在此相关布局中被压缩。

我想要在屏幕右侧对齐50dp宽度的ViewPager, 并且粉红色的RelativeLayout占据了剩余的空间。

我希望避免在布局中使用“重量”。

任何解决方案,请?

enter image description here

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

    <RelativeLayout 
     android:id="@+id/dashboard_platform_view" 
     android:layout_width="match_parent" 
     android:background="@color/colorAccent" 
     android:layout_height="match_parent" 
     android:layout_alignParentTop="true" 
     android:orientation="vertical"> 
    </RelativeLayout> 

    <android.support.v4.view.ViewPager 
     android:id="@+id/dashboard_platform_viewpager" 
     android:layout_toRightOf="@id/dashboard_platform_view" 
     android:layout_width="50dp" 
     android:layout_height="match_parent" 
     android:layout_alignParentRight="true" 
     android:layout_alignParentEnd="true" 
     android:background="@color/colorPrimary" 
     android:minWidth="50dp"> 
    </android.support.v4.view.ViewPager> 

</RelativeLayout> 

回答

1

我检查了它。所以,在这里你去:

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

<RelativeLayout 
    android:id="@+id/dashboard_platform_view" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentTop="true" 
    android:layout_toStartOf="@id/dashboard_platform_viewpager" 
    android:background="@color/colorAccent" 
    android:orientation="vertical"/> 

<android.support.v4.view.ViewPager 
    android:id="@+id/dashboard_platform_viewpager" 
    android:layout_width="50dp" 
    android:layout_height="match_parent" 
    android:layout_alignParentEnd="true" 
    android:background="@color/colorPrimary" 
    android:minWidth="50dp"/> 

</RelativeLayout> 

screenshot

+0

太棒了!谢谢! –

0

尝试添加android:layout_toLeftOf="@+id/dashboard_platform_viewpager"RelativeLayout的,并删除toRightOfViewPager

+0

谢谢,但没有奏效。同样的事情发生。 “dashboard_platform_viewpager”的宽度变为0 –

+0

对于dashboard_platform_view,no:android:layout_toLeftOf =“@ + id/dashboard_platform_viewpager”生效,并为dashboard_platform_viewpager删除android:layout_toRightOf =“@ id/dashboard_platform_view” – Kingyal

1

更改您的布局波纹管,可以帮助您解决问题

<RelativeLayout 
     xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="120dp"> 


      <android.support.v4.view.ViewPager 
       android:id="@+id/dashboard_platform_viewpager" 
       android:layout_width="50dp" 
       android:layout_height="match_parent" 
       android:layout_alignParentEnd="true" 
       android:layout_alignParentRight="true" 
       android:background="@color/colorPrimary" 
       android:minWidth="50dp" /> 

      <RelativeLayout 
       android:id="@+id/dashboard_platform_view" 
       android:layout_width="match_parent" 
       android:layout_height="match_parent" 
       android:layout_alignParentTop="true" 
       android:layout_toLeftOf="@id/dashboard_platform_viewpager" 
       android:layout_toStartOf="@id/dashboard_platform_viewpager" 
       android:background="@color/colorAccent" 
       android:orientation="vertical" /> 

     </RelativeLayout> 
+0

添加说明你有什么变化。 – Ironman