- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何在单选按钮组中使用单选按钮的共享首选项。我有两个按钮(下一个和上一个)。当用户转到下一个并再次转到上一个时,我想检查用户选择的选项
radioGroup = findViewById( R.id.radioGroup );
radioGroup.setOnCheckedChangeListener( new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
ToggleableRadioButton radioButton = (ToggleableRadioButton) group. findViewById(checkedId);
int checkedIndex = group.indexOfChild(radioButton);
SharedPreferences sharedPreferences = getSharedPreferences("MY_SHARED_PREF", MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putInt("check", checkedIndex);
editor.apply();
}
} );
private void Update(){
SharedPreferences sharedPreferences = getSharedPreferences("MY_SHARED_PREF", MODE_PRIVATE);
int savedRadioIndex = sharedPreferences.getInt("check", 0);
System.out.println("savedRadioIndex is "+savedRadioIndex);
RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radioGroup);
ToggleableRadioButton savedCheckedRadioButton = (ToggleableRadioButton) radioGroup.getChildAt(savedRadioIndex);
savedCheckedRadioButton.setChecked(true);//error on this line
}
/////log cat ,,,,我的代码错误
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void com.example.quiz.ToggleableRadioButton.setChecked(boolean)' on a null object reference
布局/////////////这是显示 RadioGroup 和单选按钮的布局
<RadioGroup
android:id="@+id/radioGroup"
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<com.example.quiz.ToggleableRadioButton
android:id="@+id/option1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:background="@android:color/white"
android:elevation="4dp"
android:padding="16dp"
android:text="Option 1"
android:textSize="20sp"
/>
<com.example.quiz.ToggleableRadioButton
android:id="@+id/option2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:background="@android:color/white"
android:elevation="4dp"
android:padding="16dp"
android:text="Option 2"
android:textSize="20sp"
/>
<com.example.quiz.ToggleableRadioButton
android:id="@+id/option3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:background="@android:color/white"
android:elevation="4dp"
android:padding="16dp"
android:text="Option 3"
android:textSize="20sp"
/>
<com.example.quiz.ToggleableRadioButton
android:id="@+id/option4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@android:color/white"
android:elevation="4dp"
android:padding="16dp"
android:text="Option 4"
android:textSize="20sp"
/>
</RadioGroup>
最佳答案
试试这个
在布局文件中
<RadioGroup
android:id="@+id/radiogroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<RadioButton
android:id="@+id/radioButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RadioButton" />
<RadioButton
android:id="@+id/radioButton2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="RadioButton2" />
</RadioGroup>
Activity 中
String radiovalue=null; //globally declared
radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {
switch (checkedId)
{
case R.id.radioButton:
radiovalue= R1.getText().toString();//R1 is radiobutton1
break;
case R.id.radioButton2:
radiovalue= R2.getText().toString();//R2 is radiobutton2
break;
}
}
});
之后将 radio 值放入共享首选项中。当您调用共享首选项值时,只需检查值并根据它启用单选按钮。
关于java - RadioGroup 中 RadioButton 的 SharedPreferences.,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62378765/
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 布局:
我是一名优秀的程序员,十分优秀!