android - 多状态切换按钮

标签 android user-interface button togglebutton

在我一直在开发的应用程序中,我希望有一个多状态(在我的例子中是三个)切换按钮,而不是 ToggleButton 提供的两个。我尝试开始自己的扩展 Button,遵循 CompoundButton 源代码,但老实说,阅读它的源代码有点不知所措。

有没有办法只使用选择器 xml 或其他东西来实现三态切换按钮,或者可能是我没有想到的另一种方法?我不知道如何做到这一点。

最佳答案

我实现了一个多状态切换按钮,源代码是here

看起来是这样的:

enter image description here

而且使用起来非常简单:

<org.honorato.multistatetogglebutton.MultiStateToggleButton
    android:id="@+id/mstb_multi_id"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_marginTop="10dip"
    mstb:values="@array/planets_array" />

在你的 Activity 中:

MultiStateToggleButton button2 = (MultiStateToggleButton) this.findViewById(R.id.mstb_multi_id);
button2.setOnValueChangedListener(new ToggleButton.OnValueChangedListener() {
    @Override
    public void onValueChanged(int value) {
        Log.d(TAG, "Value: " + value);
    }
});

关于android - 多状态切换按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4823851/

相关文章:

java - 几秒钟后启用“无选项”

为 Android 构建 Chromium 时缺少/找不到 android_gyp

Android:尝试获取 URL 时 jsoup 失败

c++ - Q消息框;按钮布局

angular - 单击 Angular2 更改按钮外观

android - 无法使用模拟器在 SQLite 中插入新记录

algorithm - 间隔重叠矩形的算法?

css - Recharts 响应式容器无法在 flexbox 中正确调整大小

javascript - 单击按钮后显示新字段

apache-flex - Flex 4 - 单元格中带有按钮的 DataGrid