创建android自定义视图:一行按钮

创建android自定义视图:一行按钮,android,view,Android,View,我想创建此组件: 它应该显示工作流的不同步骤。 每个点都应该可以点击转到另一个步骤,圆圈显示当前选择的步骤 我在考虑一个带按钮的线性布局和一个线视图,但我不知道如何使线穿过按钮 我正在寻找一种简单的方法来实现这一点,而不必直接从视图中扩展并完全绘制它。使用线性布局(水平布局)并赋予权重,使其支持多屏幕。一种简单的方法是使用RelativeLayout 例如: <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmln

我想创建此组件:

它应该显示工作流的不同步骤。 每个点都应该可以点击转到另一个步骤,圆圈显示当前选择的步骤

我在考虑一个带按钮的线性布局和一个线视图,但我不知道如何使线穿过按钮


我正在寻找一种简单的方法来实现这一点,而不必直接从视图中扩展并完全绘制它。

使用线性布局(水平布局)并赋予权重,使其支持多屏幕。

一种简单的方法是使用
RelativeLayout

例如:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="280dp"
    android:layout_height="wrap_content"
    android:layout_gravity="center_horizontal">
    <View
        android:layout_width="match_parent"
        android:layout_height="1dp"
        android:layout_marginRight="5dp"
        android:layout_marginLeft="5dp"
        android:background="@android:color/darker_gray"
        android:layout_centerVertical="true"/>

    <Button
        android:id="@+id/b1"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:text="b1" />

    <Button
        android:id="@+id/b2"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="20dp"
        android:layout_toRightOf="@id/b1"
        android:text="b2" />

    <Button
        android:id="@+id/b3"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="20dp"
        android:layout_toRightOf="@id/b2"
        android:text="b3" />

    <Button
        android:id="@+id/b4"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="20dp"
        android:layout_toRightOf="@id/b3"
        android:text="b4" />

    <Button
        android:id="@+id/b5"
        android:layout_width="40dp"
        android:layout_height="40dp"
        android:layout_marginLeft="20dp"
        android:layout_toRightOf="@id/b4"
        android:text="b5" />
</RelativeLayout>


别忘了按您的意愿更改
按钮查看

这应该会让您满意。谢谢