- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的 Activity 中有一个 RadioGroup,其中包含四个具有自定义背景的 ToggleButton。我希望用户能够一次选择任何一个按钮,并且永远不应该选择任何按钮,但即使它在 RadioGroup 中并且其他一切正常,选择已经选择的 ToggleButton 取消选择它,不留下按钮被选中。
如果用户第二次点击 ToggleButton,我如何强制它保持选中状态?
我的 XML:
<RadioGroup
android:id="@+id/radio_group"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="horizontal" />
我的 onCreate() 的相关 block :
radioGroup = (RadioGroup) findViewById(R.id.radio_group);
radioGroup.setOnCheckedChangeListener(onRadioGroupClickListener);
for (int index = 0; index < OPTIONS.length; index++) {
ToggleButton button = new ToggleButton(this);
button.setId(index);
button.setText(OPTIONS[index]);
button.setTextOn(OPTION[index]);
button.setTextOff(OPTIONS[index]);
button.setChecked(index == 0); // Set to first option by default
button.setButtonDrawable(Color.TRANSPARENT);
button.setBackgroundResource(R.drawable.selector);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View view) {
RadioGroup parent = (RadioGroup) view.getParent();
ToggleButton button = (ToggleButton) view;
TimesheetLog.d("View is checked: " + button.isChecked());
parent.check(button.getId());
currentSelection = view.getId();
}
});
radioGroup.addView(button);
}
如果我需要添加更多代码,请告诉我。谢谢!
最佳答案
下面这行应该和toggle click事件在同一个类中;
private RadioButton mBtnCurrentRadio;
切换点击事件(应该在activity中);
public void onToggle(View view) {
final ToggleButton mBtnToggle = (ToggleButton) view;
// select only one toggle button at any given time
if (mBtnCurrentToggle != null) {
mBtnCurrentToggle.setChecked(false);
}
mBtnToggle.setChecked(true);
mBtnCurrentToggle = mBtnToggle;
// app specific stuff ..
}
用于布局的 RadioGroup xml 代码;
<RadioGroup
android:id="@+id/toggleGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="24dp"
android:orientation="horizontal" >
<ToggleButton
android:id="@+id/btn_Letter"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="onToggle"
android:textOff="Letter"
android:textOn="Letter"
style="@style/toggleBtnStyle" />
<ToggleButton
android:id="@+id/btn_A4"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="onToggle"
android:textOff="A4"
android:textOn="A4"
style="@style/toggleBtnStyle" />
<ToggleButton
android:id="@+id/btn_A3"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:onClick="onToggle"
android:textOff="A3"
android:textOn="A3"
style="@style/toggleBtnStyle" />
</RadioGroup>
关于android - 如何强制 RadioGroup 中的 ToggleButton 在第二次按下时保持选中状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16235544/
Android 上的动态表单可能非常困惑,我遇到过这种特殊情况,我通过 RadioGroup 和 AppCompatRadioButton 创建了一个选项列表,其中checkedId 与动态 Radi
我想实现如下图所示的Single RadioGroup 以进行血型选择。如何做到这一点? 最佳答案 我创建了自己的 RadioGridLayout,其中包含 RadioGroup 代码并扩展了 Gri
我有一个带有单选按钮的 RadioGroup。要清除选中的项目,我正在调用 radiogroup.clearCheck()。但是,RadioGroup.setOnCheckedChangeListen
我不知道为什么我的 RadioGroup 分隔线没有显示。有人请说明一下。我已经看过 Android radiogroup, divider between radiobuttons .
有没有办法将 radioGroup 设置为只读。我试过disabled: true,但这会在radioGroup上创建一个掩码,这使得它几乎不可读。关于如何将 extjs radioGroup 设置为
我有以下 HTML,我需要一个单选按钮。不确定如何在 AngularJS 中执行此操作。 Type of M (check one):
我在 RadioGroup Listener 上遇到问题,我对 Android 有点菜鸟,非常感谢您的帮助。 我有 5 个单选按钮,每个按钮都有不同的值。 下面是java代码 package com.
我上周刚刚开始学习,我对我书上的RadioGroup有一些疑问。 radioGroup.clearCheck(); radioGroup.setOnCheckedChangeListener(
我正在尝试为单选按钮(或可切换按钮)制作自定义样式,但我不知道它是否可以实现。 我的按钮的当前样式: 我想实现这样的目标 理想的风格: 一个加号是有一个动画,其中选定的颜色在按钮之间“滑动”。在 xm
我创建了一个 RadioGroup 并以编程方式向其添加 RadioButtons。问题是,运行时我可以选中所有选项,但无法取消选中它们。这是我的代码: optionsContaine
我的想法是让 ImageView - RadioButton 成对,每对包含在 LinearLayout(水平方向)和 ImageButtons 中,当选择并确认一个选项时,它们的背景颜色会改变。所以
我正在做一个应用程序,我必须在其中为初始选择的项目生成具有特定基值的复选框,然后更改它的值。那里没有什么很复杂的。 我的问题是当我重置布局时,我创建了一个新的 RadioGroup,其中包含新的 Ra
我正在尝试从单选组获取单选按钮文本,但问题是:它没有获得值。我搜索了其他链接,但对我没有帮助。 private EditText FirstName; private EditText
这是我在这个网站上的第一篇文章,我希望它做得很好。我试图在我的 radio 组中进行单一选择,但所有这些都被选中并且无法取消选中。我希望如果一个单选按钮被选中,其他的则保持未选中状态。到目前为止,这是
我正在尝试创建 2 行单选按钮,如下图所示。但是直接放在上面我的radio group就不行了线性布局。 我是安卓开发的新手。所以如果有更好的选择。欢迎他们 我的代码
我正在尝试创建一个 RadioGroup,如图所示。我希望一次只检查一个 RadioButton。 这就是我为实现这一目标所做的。
我想创建一个包含 RadioGroup 的自定义 View。在 RadioGroup 内部,我想设置 RadioButtons,以便第一个 RadioButton 位于左上角,第二个是在那之下,第一个
是否可以在自己的布局中拥有一个带有单选按钮的单选组?每个单选按钮都必须位于包含文本和图像的行中。我不会使用 ListView ,因为我只有 2 行。 最佳答案 方法如下: 在 XML 布局文件中的每个
我在我的应用程序上安装了一个带有三个单选按钮的单选按钮组,但我希望文本显示在它上面,就像复选框等一样。我可以像这样引用 strings.xml 文件吗?
我想给用户四个选择,第一个和第二个选择在一行,第三个和第四个选择在另一行。我的问题是当应用程序启动时我可以选择多个选项,但我不希望这样。这是我的 xml 布局:
我是一名优秀的程序员,十分优秀!