Android Metro风格设计模式

时间:2013-08-08 04:08:41

标签: android modern-ui

我正在设计Metro风格的Android应用程序 Tiles,Groups&滚动完成!

对于谁不熟悉Metro-Style(又名现代UI),请看下面的图片。

Modern UI

问题:
什么是最好的(性能明智的)设计模式,用于动态分类瓷砖2行和1。多列?

- HorizontalScrollView
- - LinearLayout  
- - - Every 2 tiles have same weight

- HorizontalScrollView
- - TableLayout
- - - Every 2 tiles have same row

- Something else ?

1 个答案:

答案 0 :(得分:0)

试试这个布局:

|相对布局

| - > Horizo​​ntalScrollView

| - | - > LinearLayout (showDivider = middle | begin | end,divider drawable = 50x1])

| - | - | - > TableLayout (重量= 1)

<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:background="#011a41"
    android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin"
    tools:context=".Main" >

    <HorizontalScrollView android:id="@+id/horizontalScrollView1"
        android:layout_width="match_parent" android:layout_height="match_parent"
        android:layout_alignParentLeft="true" android:layout_alignParentTop="true" >

        <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent"
            android:orientation="horizontal" android:divider="@drawable/divider"
            android:showDividers="middle|beginning|end" >

            <TableLayout android:layout_width="wrap_content" android:layout_height="match_parent" >
                <TableRow android:id="@+id/tableRow1" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <ImageView android:id="@+id/imageView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" />
                </TableRow>

                <TableRow android:id="@+id/tableRow2" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <ImageView android:id="@+id/imageView2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" />
                </TableRow>

                <TableRow android:id="@+id/tableRow3" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <ImageView android:id="@+id/imageView3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" />
                </TableRow>

                <TableRow android:id="@+id/tableRow4" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <ImageView android:id="@+id/imageView4" android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/ic_launcher" />
                </TableRow>
            </TableLayout>

            <TableLayout android:layout_width="wrap_content" android:layout_height="match_parent" >
                <TableRow android:id="@+id/tableRow5" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <ProgressBar android:id="@+id/progressBar1" android:layout_width="wrap_content" android:layout_height="wrap_content" />
                </TableRow>

                <TableRow android:id="@+id/tableRow6" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Button" />
                </TableRow>

                <TableRow android:id="@+id/tableRow7" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <CheckBox android:id="@+id/checkBox1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="CheckBox" />
                </TableRow>

                <TableRow android:id="@+id/tableRow8" android:layout_width="wrap_content" android:layout_height="wrap_content"
                    android:layout_weight="1" >
                    <ToggleButton android:id="@+id/toggleButton1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="ToggleButton" />
                </TableRow>
            </TableLayout>
        </LinearLayout>
    </HorizontalScrollView>
</RelativeLayout>