在Android SDK中按下按钮

ali*_*ali 2 android state button selected

我有5个简单的按钮,我希望它们像单选按钮一样,但没有勾选框(或者他们称之为的任何东西).它们在行中对齐,我只希望一次选择其中一个,当选择一个按钮时,它必须保持其选定的样式.我的布局代码如下所示:

        <Button
            android:id="@+id/button1"
            android:layout_width="150dp"
            android:layout_height="fill_parent"
            android:layout_alignParentTop="true"
            android:layout_margin="0dp"
            android:text="@string/mybutton1" />

        <Button
            android:id="@+id/button2"
            android:layout_width="150dp"
            android:layout_height="wrap_content"
            android:layout_alignParentTop="true"
            android:layout_toRightOf="@+id/button1"
            android:text="@string/mybutton2" />

        // and so on
Run Code Online (Sandbox Code Playgroud)

我的代码:

    mybtn1.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            mybtn1.setPressed(true);
        }
    });
Run Code Online (Sandbox Code Playgroud)

所以,我不知道我是否可以在布局或代码中执行此操作.当我点击按钮时,有没有办法让按钮保持在选定状态(和选定的样式)?此外,是否可以将事件分配给所有这些按钮?

谢谢!

Phi*_*hil 6

只需在onClickListener中设置他们选择的状态:

myButton.setOnClickListener(new View.OnClickListener(){
    public void onClick(View v)
    {
        //handle click
        v.setSelected(true);
    }
});
Run Code Online (Sandbox Code Playgroud)

单击状态只是选定状态,您可以打开和关闭效果.