我怎样才能在android中创建像iphone设置这样的视图?

发布于 2024-12-11 14:29:30 字数 126 浏览 0 评论 0原文

我想在 Android 上创建一个类似 iPhone 设置的视图。

这是一张图片,例如

在此处输入图像描述

I wanna create an iphone settings-like view on android.

Here is a picture for example

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

泪是无色的血 2024-12-18 14:29:30

使用 XML 文件创建圆角矩形形状。并将该 xml 文件作为不同布局的背景,如RelativeLayout、LinearLayout 等。

例如:
borderframe.xml 文件

    <?xml version="1.0" encoding="UTF-8"?>
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android">
    <stroke android:width="1dip" android:color="#A6A6A6" />
    <solid 

        android:color="#ffffff"
        android:paddingLeft="5dip"
        android:paddingTop="5dip"/>

    <corners android:radius="10px"/>

    <padding 

        android:top="10dip" 

        android:bottom="10dip" /> 
</shape>

将此xml文件放入drawable目录并将其设置为Any布局的背景。
如下:
只需复制粘贴此布局文件即可得到解决方案。

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <!-- Header Part Start -->
    <RelativeLayout  android:id="@+id/headerPart" android:layout_height="45dp" android:layout_width="fill_parent"
        android:layout_alignParentTop="true" android:background="@drawable/header_gradient">

        <TextView android:id="@+id/header" android:text="Bill"
            android:textColor="#ffffff" android:textStyle="bold"
            android:textSize="20dp" android:layout_centerInParent="true"
            android:layout_width="wrap_content" android:layout_height="wrap_content"/>

    </RelativeLayout>
    <!-- Header Part Finish -->


    <RelativeLayout android:layout_below="@+id/headerPart" android:layout_width="fill_parent"
        android:layout_height="fill_parent" android:layout_marginBottom="55dp">


        <RelativeLayout android:id="@+id/firstBorderLayout"
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:layout_marginLeft="20dp" android:layout_marginRight="20dp" 
            android:layout_marginTop="30dp" android:background="@drawable/borderframe">

            <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" 
                android:gravity="center_horizontal"
                android:layout_height="wrap_content" android:stretchColumns="1">     

                <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       


                    <TextView android:id="@+id/totalAmoutHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Total" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#A8A8A8"/>     

                    <TextView android:id="@+id/totalAmountValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000"
                        android:layout_height="wrap_content" android:text=" $00.00"/>
                </TableRow>     

                <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       

                    <TextView android:id="@+id/percentageTipsAmountHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="% TIP" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#A8A8A8"/>

                    <TextView android:id="@+id/percentageTipsAmountValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000"
                        android:layout_height="wrap_content" android:text="$00.00"/>
                </TableRow>   

                <View        
                    android:layout_height="2dip"
                    android:background="#FF909090"
                    android:layout_marginBottom="3dp"
                    android:layout_marginLeft="5dp"
                    android:layout_marginRight="5dp"
                    android:layout_marginTop="3dp" />
                <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       

                    <TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Grand Total" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#656565" android:textStyle="bold"/>

                    <TextView android:id="@+id/grantTotalValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left" 
                        android:textSize="18dp" android:textColor="#000000" android:textStyle="bold"
                        android:layout_height="wrap_content" android:text="$00.00"/>
                </TableRow>

            </TableLayout> 

        </RelativeLayout>

        <!-- Second Border Frame -->
        <RelativeLayout android:id="@+id/secondBorderLayout" android:layout_below="@+id/firstBorderLayout"
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:layout_marginLeft="20dp" android:layout_marginRight="20dp" 
            android:layout_marginTop="30dp" android:background="@drawable/borderframe">

            <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" 
                android:gravity="center_horizontal"
                android:layout_height="wrap_content" android:stretchColumns="1">     

                <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       


                    <TextView android:id="@+id/taxAndTipsByPartySizeHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Tax and Tip / 2" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#A8A8A8"/>     

                    <TextView android:id="@+id/taxAndTipsByPartySizeValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000" android:paddingRight="5dp"
                        android:layout_height="wrap_content" android:text=" $00.00"/>
                </TableRow>     

                <View        
                    android:layout_height="2dip"
                    android:background="#FF909090"
                    android:layout_marginBottom="3dp"
                    android:layout_marginLeft="5dp"
                    android:layout_marginRight="5dp"
                    android:layout_marginTop="3dp" />
                <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       

                    <TextView android:id="@+id/grantTotalByPartySizeHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Grand Total / 2" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#656565" android:textStyle="bold"/>

                    <TextView android:id="@+id/grantTotalByPartySizeValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000" android:textStyle="bold"
                        android:layout_height="wrap_content" android:text="$00.00"/>
                </TableRow>

            </TableLayout> 

        </RelativeLayout>

        <!-- Bottom Continue Start -->
        <RelativeLayout android:id="@+id/bottomContinueLayout" 
            android:layout_height="45dp" android:layout_width="fill_parent"
            android:layout_alignParentBottom="true" android:background="@drawable/header_gradient">

            <Button android:id="@+id/backToPartySize" android:text="Party Size"
                android:textColor="#ffffff" android:layout_alignParentLeft="true"
                android:layout_width="wrap_content" android:layout_height="wrap_content" 
                android:layout_centerInParent="true" android:background="@drawable/selector_button"/>

        </RelativeLayout>
        <!-- Bottom Continue Finish -->
    </RelativeLayout>
     <LinearLayout android:id="@+id/addMobLayout" android:layout_below="@+id/bottomContinueLayout" 
        android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_alignParentBottom="true">

    </LinearLayout>

</RelativeLayout>

希望这会对您有所帮助。
谢谢。

Creaqte Round Rectangle shape with the XML file. And Put that xml file as a Background of the different Layout as like RelativeLayout, LinearLayout etc..

ex:
borderframe.xml file

    <?xml version="1.0" encoding="UTF-8"?>
<shape 
    xmlns:android="http://schemas.android.com/apk/res/android">
    <stroke android:width="1dip" android:color="#A6A6A6" />
    <solid 

        android:color="#ffffff"
        android:paddingLeft="5dip"
        android:paddingTop="5dip"/>

    <corners android:radius="10px"/>

    <padding 

        android:top="10dip" 

        android:bottom="10dip" /> 
</shape>

Put this xml file in to drawable directoty and Set it as the background of Any layout.
as Like below:
Just Copy paste this layout file and u will get the sollution.

    <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <!-- Header Part Start -->
    <RelativeLayout  android:id="@+id/headerPart" android:layout_height="45dp" android:layout_width="fill_parent"
        android:layout_alignParentTop="true" android:background="@drawable/header_gradient">

        <TextView android:id="@+id/header" android:text="Bill"
            android:textColor="#ffffff" android:textStyle="bold"
            android:textSize="20dp" android:layout_centerInParent="true"
            android:layout_width="wrap_content" android:layout_height="wrap_content"/>

    </RelativeLayout>
    <!-- Header Part Finish -->


    <RelativeLayout android:layout_below="@+id/headerPart" android:layout_width="fill_parent"
        android:layout_height="fill_parent" android:layout_marginBottom="55dp">


        <RelativeLayout android:id="@+id/firstBorderLayout"
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:layout_marginLeft="20dp" android:layout_marginRight="20dp" 
            android:layout_marginTop="30dp" android:background="@drawable/borderframe">

            <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" 
                android:gravity="center_horizontal"
                android:layout_height="wrap_content" android:stretchColumns="1">     

                <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       


                    <TextView android:id="@+id/totalAmoutHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Total" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#A8A8A8"/>     

                    <TextView android:id="@+id/totalAmountValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000"
                        android:layout_height="wrap_content" android:text=" $00.00"/>
                </TableRow>     

                <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       

                    <TextView android:id="@+id/percentageTipsAmountHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="% TIP" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#A8A8A8"/>

                    <TextView android:id="@+id/percentageTipsAmountValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000"
                        android:layout_height="wrap_content" android:text="$00.00"/>
                </TableRow>   

                <View        
                    android:layout_height="2dip"
                    android:background="#FF909090"
                    android:layout_marginBottom="3dp"
                    android:layout_marginLeft="5dp"
                    android:layout_marginRight="5dp"
                    android:layout_marginTop="3dp" />
                <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       

                    <TextView android:id="@+id/TextView03" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Grand Total" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#656565" android:textStyle="bold"/>

                    <TextView android:id="@+id/grantTotalValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left" 
                        android:textSize="18dp" android:textColor="#000000" android:textStyle="bold"
                        android:layout_height="wrap_content" android:text="$00.00"/>
                </TableRow>

            </TableLayout> 

        </RelativeLayout>

        <!-- Second Border Frame -->
        <RelativeLayout android:id="@+id/secondBorderLayout" android:layout_below="@+id/firstBorderLayout"
            android:layout_height="wrap_content" android:layout_width="fill_parent"
            android:layout_marginLeft="20dp" android:layout_marginRight="20dp" 
            android:layout_marginTop="30dp" android:background="@drawable/borderframe">

            <TableLayout android:id="@+id/TableLayout01" android:layout_width="fill_parent" 
                android:gravity="center_horizontal"
                android:layout_height="wrap_content" android:stretchColumns="1">     

                <TableRow android:id="@+id/TableRow01" android:layout_width="fill_parent" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       


                    <TextView android:id="@+id/taxAndTipsByPartySizeHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Tax and Tip / 2" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#A8A8A8"/>     

                    <TextView android:id="@+id/taxAndTipsByPartySizeValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000" android:paddingRight="5dp"
                        android:layout_height="wrap_content" android:text=" $00.00"/>
                </TableRow>     

                <View        
                    android:layout_height="2dip"
                    android:background="#FF909090"
                    android:layout_marginBottom="3dp"
                    android:layout_marginLeft="5dp"
                    android:layout_marginRight="5dp"
                    android:layout_marginTop="3dp" />
                <TableRow android:id="@+id/TableRow02" android:layout_width="wrap_content" 
                    android:layout_height="wrap_content" android:layout_gravity="center_vertical">       

                    <TextView android:id="@+id/grantTotalByPartySizeHeading" android:layout_width="wrap_content" android:layout_gravity="center_vertical|right"
                        android:layout_height="wrap_content" android:text="Grand Total / 2" android:layout_marginRight="10dp"
                        android:textSize="18dp" android:textColor="#656565" android:textStyle="bold"/>

                    <TextView android:id="@+id/grantTotalByPartySizeValue" android:layout_width="wrap_content" android:layout_marginLeft="10dp"
                        android:layout_marginRight="30dp" android:layout_gravity="center_vertical|left"
                        android:textSize="18dp" android:textColor="#000000" android:textStyle="bold"
                        android:layout_height="wrap_content" android:text="$00.00"/>
                </TableRow>

            </TableLayout> 

        </RelativeLayout>

        <!-- Bottom Continue Start -->
        <RelativeLayout android:id="@+id/bottomContinueLayout" 
            android:layout_height="45dp" android:layout_width="fill_parent"
            android:layout_alignParentBottom="true" android:background="@drawable/header_gradient">

            <Button android:id="@+id/backToPartySize" android:text="Party Size"
                android:textColor="#ffffff" android:layout_alignParentLeft="true"
                android:layout_width="wrap_content" android:layout_height="wrap_content" 
                android:layout_centerInParent="true" android:background="@drawable/selector_button"/>

        </RelativeLayout>
        <!-- Bottom Continue Finish -->
    </RelativeLayout>
     <LinearLayout android:id="@+id/addMobLayout" android:layout_below="@+id/bottomContinueLayout" 
        android:layout_height="wrap_content" android:layout_width="fill_parent" android:layout_alignParentBottom="true">

    </LinearLayout>

</RelativeLayout>

Hope This will help you.
Thanks.

耶耶耶 2024-12-18 14:29:30

您应该尝试使用 PreferenceActivity。它们是 Android 用于应用程序设置的内容。它们的作用与您发布的 iPhone 图片基本相同。

Your should try using a PreferenceActivity. They're what Android uses for settings in applications. They accomplish essentially the same thing as the iPhone picture you posted.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文