四个按钮中的Android循环按钮

时间:2017-07-01 05:19:06

标签: android android-layout

我在网上搜索了很多资料,但没有找到任何帮助这种按钮设计的完整资源,虽然我能够绕过拐角或使按钮循环但我没有绘制以下的GUI设计..任何人都有任何想法如何做到这一点,或者更好的方法是如何将按钮向内弯曲,而不是使其成为圆形...提前谢谢。 enter image description here

2 个答案:

答案 0 :(得分:0)

您可以使用framelayout添加该五个按钮。 由于framelayout,您可以在视图顶部重叠圆形

 <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context="com.example.dell.myapplication.MainActivity">

    <FrameLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        >

        <Button
            android:id="@+id/button"
            android:layout_width="293dp"
            android:layout_height="165dp"
            android:text="Button" />

        <Button
            android:id="@+id/button2"
            android:layout_width="297dp"
            android:layout_height="159dp"
            android:layout_gravity="end"
            android:text="Button2" />

        <Button
            android:id="@+id/button3"
            android:layout_width="292dp"
            android:layout_height="143dp"
            android:layout_gravity="bottom|left"
            android:text="Button3" />

        <Button
            android:id="@+id/button4"
            android:layout_width="295dp"
            android:layout_height="145dp"
            android:layout_gravity="bottom|right"
            android:text="Button4" />

        <Button
            android:id="@+id/button5"
            android:layout_width="163dp"
            android:layout_height="170dp"
            android:layout_gravity="center_horizontal|center_vertical"
            android:text="Button5" />
    </FrameLayout>
</RelativeLayout>

答案 1 :(得分:0)

这是我所做的布局。它应该得到改善,但基本问题已经解决了。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="8dp">


<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_weight="2"
    android:layout_marginBottom="3dp">

</FrameLayout>

<FrameLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:layout_weight="1">

    <Button
        android:id="@+id/button7"
        android:layout_width="150dp"
        android:layout_height="150dp"
        android:text="Button"
        android:layout_gravity="center"
        android:background="@drawable/circular"/>

    <GridLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:visibility="visible"
        android:rowCount="2"
        android:columnCount="2">

        <Button
            android:id="@+id/button6"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:background = "@color/colorPrimary"
            android:text="Button" />

        <Button
            android:id="@+id/button5"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:background = "@color/colorPrimary"
            android:text="Button"
            android:layout_marginStart="3dp"/>

        <Button
            android:id="@+id/button4"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:background = "@color/colorPrimary"
            android:text="Button"
            android:layout_marginTop="3dp"/>

        <Button
            android:id="@+id/button3"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_columnWeight="1"
            android:layout_rowWeight="1"
            android:background = "@color/colorPrimary"
            android:layout_marginTop="3dp"
            android:layout_marginStart="3dp"
            android:text="Button" />
    </GridLayout>
</FrameLayout>

这是用于中央按钮背景的圆形形状

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android" 
android:shape="oval">

<solid
    android:color="@color/colorPrimary"/>

<stroke
    android:color="@android:color/white"
    android:width="3dp"/>
<size
    android:height="50dp"
    android:width="50dp"/>
</shape>

这是结果

enter image description here