我在我的xml文件中添加了三個單選按鈕。每個單選按鈕都在單獨的LinearLayout中,但是是相同的xml。首先,我不知道如何將它們添加到radiogroup,同時將它們保留在單獨的LinearLayouts中。其次,我寫了下面的代碼來檢查只有一個單選按鈕。但是這不起作用。請讓我知道我應該如何繼續,如果有更好的解決方案。這是代碼。Android單選按鈕未選中
RadioButton screenof;
RadioButton screenof3;
RadioButton onexit;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.settings);
screenof = (RadioButton)findViewById(R.id.radioscreenof);
screenof.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(!screenof.isChecked())
{
screenof.setChecked(true);
screenof3.setChecked(false);
onexit.setChecked(false);
}
}
});
screenof3 = (RadioButton)findViewById(R.id.radioscreenof3);
screenof3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(!screenof3.isChecked())
{
screenof3.setChecked(true);
screenof.setChecked(false);
onexit.setChecked(false);
}
}
});
onexit = (RadioButton)findViewById(R.id.radiolockimmediately);
onexit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(!onexit.isChecked())
{
screenof3.setChecked(false);
screenof.setChecked(false);
onexit.setChecked(true);
}
}
});
}
這裏是xml文件
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:layout_weight="1"
android:background="@color/widgetcolor"
>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/deactiveTexts"
android:clickable="false"
android:layout_weight="1"
>
<TextView
android:text="Lock Mode"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:layout_weight="1"
android:id="@+id/lockscreenof"
>
<TextView
android:text="Lock apps at screen off"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView2"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioscreenof"
android:layout_weight="1"
android:paddingRight="30dp"
app:buttonTint="@android:color/holo_green_dark"
android:elevation="0dp"
android:duplicateParentState="false"
android:checked="false"
/>
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:layout_weight="1"
android:id="@+id/lockscreenof3"
>
<TextView
android:text="Lock apps after screen of for 3 minutes"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView3"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radioscreenof3"
android:layout_weight="1"
android:paddingRight="30dp"
app:buttonTint="@android:color/holo_green_dark" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:layout_weight="1"
android:id="@+id/lockimmediately"
>
<TextView
android:text="Lock apps immediately upon exit"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView1"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
<RadioButton
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/radiolockimmediately"
android:layout_weight="1"
android:paddingRight="30dp"
app:buttonTint="@android:color/holo_green_dark" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:id="@+id/passonce"
android:layout_weight="1"
>
<TextView
android:text="Enter password once to unlock all apps"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView4"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkpassonce"
android:layout_weight="1"
android:paddingRight="30dp"
app:buttonTint="@android:color/holo_green_dark" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:id="@+id/displayhint"
android:layout_weight="1"
>
<TextView
android:text="Display lock mode hint"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView5"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkhint"
android:layout_weight="1"
android:paddingRight="30dp"
app:buttonTint="@android:color/holo_green_dark"
android:checked="false" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/deactiveTexts"
android:clickable="false"
android:layout_weight="1"
>
<TextView
android:text="Password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/textView6"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:clickable="true"
android:id="@+id/changepass"
android:layout_weight="1"
>
<TextView
android:text="Change password"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
</LinearLayout>
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="5dp"
android:layout_margin="1dp"
android:background="@color/colorAccent"
android:id="@+id/invisiblepattern"
android:layout_weight="1"
>
<TextView
android:text="Invisible Pattern"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textSize="17dp"
android:layout_weight="1"
android:textStyle="bold" />
<CheckBox
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/checkpatinvisible"
android:layout_weight="1"
android:paddingRight="30dp"
app:buttonTint="@android:color/holo_green_dark" />
</LinearLayout>
</LinearLayout>
我編輯的代碼並粘貼您的代碼,但是當我跑的代碼有意想不到的效果。我把打印報告,這是它打印。我點擊了按鈕從上到下一次。
Case 1
Case 1
Case 2
Case 2
Case 1
Case 2
Case 3
仍然沒有工作。我把打印聲明,並點擊每個RadioButton,這就是它打印什麼''System.out:案例1 System.out:案例1 System.out:案例2 System.out:案例2 System.out:案例1 System.out:案例2 System.out:案例3 –