多个布局,一个活动

问题描述:

我想创建一个包含5个“FrameLayout”的活动,如下图所示。 3等于第一行的FrameLayout和第二行的2 FrameLayout。多个布局,一个活动

enter image description here

我做到了使用线性布局,但我得到了一个警告,嵌套的权重是坏。那么还有其他方法可以做到吗?

片段应该在屏幕上延伸而不使用像(100dp)这样的值。

+0

发表您的布局。 – SilentKnight

试试这个

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
     xmlns:tools="http://schemas.android.com/tools" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:orientation="vertical" 
     tools:context=".MainActivity" > 

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

      <FrameLayout 
       android:layout_width="0dp" 
       android:layout_height="100dp" 
       android:layout_weight="1" 
       android:background="#00bbff" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:text="1" /> 
      </FrameLayout> 

      <FrameLayout 
       android:layout_width="0dp" 
       android:layout_height="100dp" 
       android:layout_weight="1" 
       android:background="#bb00ff" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:text="2" /> 
      </FrameLayout> 

      <FrameLayout 
       android:layout_width="0dp" 
       android:layout_height="100dp" 
       android:layout_weight="1" 
       android:background="#00ff00" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:text="3" /> 
      </FrameLayout> 
     </LinearLayout> 

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

      <FrameLayout 
       android:layout_width="0dp" 
       android:layout_height="100dp" 
       android:layout_weight="1" 
       android:background="#bbff00"> 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:text="4" /> 
      </FrameLayout> 

      <FrameLayout 
       android:layout_width="0dp" 
       android:layout_height="100dp" 
       android:layout_weight="1" 
       android:background="#ffbb00" > 

       <TextView 
        android:layout_width="wrap_content" 
        android:layout_height="wrap_content" 
        android:layout_gravity="center" 
        android:text="5" /> 
      </FrameLayout> 
     </LinearLayout> 

    </LinearLayout> 
+0

它也使用带有权重的嵌套LinearLayout,因此与OP的解决方案没有区别。 – aga

+0

@aga我没有得到'嵌套的重量是坏'警告。 – Aniruddha

+1

@Aniruddha解决方案没有填充高度(其包裹) –

你也CAL使用这两种表格布局.. 像

<TableLayout android:weight='1'> 
    <TableRow> 
     <Linear> 
     <FrameLayout /> <FrameLayout /> <FrameLayout /> 
     </Linear> 
    </TableRow> 
</TableLayout> 

<TableLayout android:weight='1'> 
    <TableRow> 
     <Linear> 
     <FrameLayout /> <FrameLayout/> 
     </Linear> 
    </TableRow> 
</TableLayout> 

其粗糙的布局。我希望你明白了。

试试这个::希望它对你有用。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" 
    tools:context=".MainActivity" > 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:paddingBottom="10dp" 
     android:paddingLeft="10dp" 
     android:paddingRight="10dp" 
     android:paddingTop="10dp" > 

     <FrameLayout 
      android:layout_width="0dp" 
      android:layout_height="100dp" 
      android:layout_weight="1" 
      android:background="#00bbff" 
       > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:text="1" /> 
     </FrameLayout> 


     <View android:layout_width="10dp" 
     android:layout_height="10dp" 
     /> 

     <FrameLayout 
      android:layout_width="0dp" 
      android:layout_height="100dp" 
      android:layout_weight="1" 
      android:background="#bb00ff" 
      > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:text="2" 
       /> 
     </FrameLayout> 

      <View android:layout_width="10dp" 
     android:layout_height="10dp" 
     /> 
     <FrameLayout 
      android:layout_width="0dp" 
      android:layout_height="100dp" 
      android:layout_weight="1" 
      android:background="#00ff00" 
      > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:text="3" /> 
     </FrameLayout> 
    </LinearLayout> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:paddingBottom="10dp" 
     android:paddingLeft="10dp" 
     android:paddingRight="10dp" 
     android:paddingTop="10dp"> 

     <FrameLayout 
      android:layout_width="0dp" 
      android:layout_height="100dp" 
      android:layout_weight="1" 
      android:background="#bbff00" > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:text="4" /> 
     </FrameLayout> 

     <View android:layout_width="10dp" 
     android:layout_height="10dp" 
     /> 

     <FrameLayout 
      android:layout_width="0dp" 
      android:layout_height="100dp" 
      android:layout_weight="1" 
      android:background="#ffbb00" > 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_gravity="center" 
       android:text="5" /> 
     </FrameLayout> 
    </LinearLayout> 

</LinearLayout> 

see image below ![image][1] 

See This code 
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
xmlns:tools="http://schemas.android.com/tools" 
android:layout_width="match_parent" 
android:layout_height="match_parent" 
android:orientation="vertical"> 
<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:orientation="horizontal"> 
    <LinearLayout 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:background="#FFFFFF" 
     android:gravity="center" 
     android:orientation="vertical"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="center" 
      android:text="1"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:layout_marginLeft="2dp" 
     android:background="#FFFFFF" 
     android:gravity="center" 
     android:orientation="vertical"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="center" 
      android:text="1"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="100dp" 
     android:layout_height="100dp" 
     android:layout_marginLeft="2dp" 
     android:background="#FFFFFF" 
     android:gravity="center" 
     android:orientation="vertical"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:gravity="center" 
      android:text="1"/> 
    </LinearLayout> 
</LinearLayout> 
<LinearLayout 
    android:layout_width="fill_parent" 
    android:layout_height="100dp" 
    android:layout_marginTop="2dp" 
    android:orientation="horizontal"> 
    <LinearLayout 
     android:layout_width="150dp" 
     android:layout_height="fill_parent" 
     android:background="#FFFFFF" 
     android:gravity="center" 
     android:orientation="vertical"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="4"/> 
    </LinearLayout> 
    <LinearLayout 
     android:layout_width="150dp" 
     android:layout_height="fill_parent" 
     android:background="#FFFFFF" 
     android:gravity="center" 
     android:layout_marginLeft="1dp" 
     android:orientation="vertical"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="4" /> 
    </LinearLayout> 
</LinearLayout>