如何垂直和水平安排一些图片

问题描述 投票:0回答:4

在我的应用程序我有10个图像,我布置的两个图像作为行明智使用线性布局,我要安排的第一行下的剩余的图像行明智(两个图像的基团)。我想这个代码,我不知道怎么安排下,第一行剩余的图像,我也想添加滚动视图相同。是否有可能增加一个滚动视图所有线性布局?我试过,但代码是行不通的。有谁能够帮助我?我是新来的Android布局。

 <RelativeLayout 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:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="com.cozyne.user.picimagetest.GridViewActivity">

<LinearLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageButton
    android:id="@+id/imageButton1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/gridimg" />
<ImageButton
    android:id="@+id/imageButton2"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/gridimg" />

</LinearLayout>
<LinearLayout
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:gravity="start"
    android:orientation="vertical"
    android:layout_weight="1"
   >
<ImageButton
    android:id="@+id/imageButton4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/gridimg" />


<ImageButton
    android:id="@+id/imageButton5"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:src="@drawable/gridimg" />


</LinearLayout>
</RelativeLayout>
android android-layout android-xml
4个回答
0
投票

使用网格视图或RecyclerView使用自定义适配器来代替。

http://developer.android.com/guide/topics/ui/layout/gridview.html


0
投票

你使用不一致的布局。把每一组的两个图像到它自己的线性布局,并设置它的取向水平。那么对于后续的每一行都成功。你也可以使用与表行作为行的表布局。你应该始终将宽度,一定要设置高度来包装内容。如果您有任何不一致行高度麻烦,可以0dp的高度分配给每一行与1至每一行layout_weight。然而,这可能扭曲/截止图像。

<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:paddingLeft="@dimen/activity_horizontal_margin"
          android:paddingRight="@dimen/activity_horizontal_margin"
          android:paddingTop="@dimen/activity_vertical_margin"
          android:paddingBottom="@dimen/activity_vertical_margin"
          android:orientation="vertical"
          tools:context="com.cozyne.user.picimagetest.GridViewActivity">
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <ImageButton
        android:id="@+id/imageButton1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
    <ImageButton
        android:id="@+id/imageButton2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
</LinearLayout>
<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    >
    <ImageButton
        android:id="@+id/imageButton4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
    <ImageButton
        android:id="@+id/imageButton5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
    </LinearLayout>
</LinearLayout>

0
投票

layout_below到第二排,因为你的父母标签的RelativeLayout和在RelativeLayout的,你必须设置其他控件ID子控件:Android的加入。

   <RelativeLayout 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:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="com.cozyne.user.picimagetest.GridViewActivity">

    <LinearLayout
    android:id="@+id/firstrow"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_vertical"
    android:orientation="horizontal">
    <ImageButton
        android:id="@+id/imageButton1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
    <ImageButton
        android:id="@+id/imageButton2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />

    </LinearLayout>
    <LinearLayout
    android:id="@+id/secondrow"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
     android:layout_below="@+id/firstrow"
        android:gravity="start"
        android:orientation="vertical"
        android:layout_weight="1"
       >
    <ImageButton
        android:id="@+id/imageButton4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />


    <ImageButton
        android:id="@+id/imageButton5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />


    </LinearLayout>
    </RelativeLayout>

0
投票

要在TableLayout做到这一点,你会修改它是这样的:

<TableLayout 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:paddingLeft="@dimen/activity_horizontal_margin"
          android:paddingRight="@dimen/activity_horizontal_margin"
          android:paddingTop="@dimen/activity_vertical_margin"
          android:paddingBottom="@dimen/activity_vertical_margin"
          android:orientation="vertical"
          tools:context="com.cozyne.user.picimagetest.GridViewActivity">



<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <ImageButton
        android:id="@+id/imageButton1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg"/>
    <ImageButton
        android:id="@+id/imageButton2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
</TableRow>

<TableRow
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal"
    >
    <ImageButton
        android:id="@+id/imageButton4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
    <ImageButton
        android:id="@+id/imageButton5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:src="@drawable/gridimg" />
</TableRow>

<!--add rows as needed-->

<!-- final row with one image-->
<TableRow
    android:layout_height="wrap_content"
    android:layout_width="match_parent"
    android:layout_gravity="left"
    android:src="@drawable/gridimg" >
</TableRow>

© www.soinside.com 2019 - 2024. All rights reserved.