1

我正在设计一个 Metro 风格的 Android 应用程序。
瓷砖、组和卷轴已完成!

对于不熟悉 Metro-Style(又名 Modern UI)的人,请看下图。

现代用户界面

问题:
在 2 行和多列中动态排序图块的最佳(性能方面)设计模式是什么?

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

或者

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

或者

- Something else ?
4

1 回答 1

-1

试试这个布局:

| 相对布局

|--> 水平滚动视图

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

|--|--|--> 表格布局(权重=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>
于 2014-01-21T16:36:17.537 回答