Android中按下的单选按钮状态列表?
我在警报对话框中有单选按钮列表,我必须在10分钟、15分钟和n分钟后选择报警等选项,但当我单击一个单选按钮并再次打开laert对话框时,单选按钮保持未单击状态,但我希望单击所选选项。怎么可能呢?是否需要将其状态存储在数据库或任何其他解决方案中 我的活动:Android中按下的单选按钮状态列表?,android,radio-button,android-sqlite,Android,Radio Button,Android Sqlite,我在警报对话框中有单选按钮列表,我必须在10分钟、15分钟和n分钟后选择报警等选项,但当我单击一个单选按钮并再次打开laert对话框时,单选按钮保持未单击状态,但我希望单击所选选项。怎么可能呢?是否需要将其状态存储在数据库或任何其他解决方案中 我的活动: case RADIOBTN_DIALOG_ID: AlertDialog.Builder builder2=new AlertDialog.Builder(Task_Details.this) .set
case RADIOBTN_DIALOG_ID:
AlertDialog.Builder builder2=new AlertDialog.Builder(Task_Details.this)
.setTitle("Select Reminder Time")
.setSingleChoiceItems(reminder_radio, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch(which)
{
case 0:
AlarmReceiver alarm = new AlarmReceiver();
alarm.CancelAlarm(getApplicationContext());
alarm.OneMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
case 1:
AlarmReceiver alarm1 = new AlarmReceiver();
alarm1.CancelAlarm(getApplicationContext());
alarm1.TenMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
case 2:
AlarmReceiver alarm2 = new AlarmReceiver();
alarm2.CancelAlarm(getApplicationContext());
alarm2.FifteenMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
case 3:
AlarmReceiver alarm3 = new AlarmReceiver();
alarm3.CancelAlarm(getApplicationContext());
alarm3.nMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
}
dialog.dismiss();
}
});
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, " Alarm Received !!! ", Toast.LENGTH_LONG).show();
}
public void CancelAlarm(Context context)
{
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent sender = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarmManager.cancel(sender);
}
public void OneMintAlarm(Context context)
{
AlarmManager alarms = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context,
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
1000 * 10, recurringDownload);
}
public void TenMintAlarm(Context context)
{
AlarmManager alarms = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context,
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
1000 * 600, recurringDownload);
}
public void FifteenMintAlarm(Context context)
{
AlarmManager alarms = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context,
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
1000 * 900, recurringDownload);
}
public void nMintAlarm(Context context)
{
}
广播接收器活动:
case RADIOBTN_DIALOG_ID:
AlertDialog.Builder builder2=new AlertDialog.Builder(Task_Details.this)
.setTitle("Select Reminder Time")
.setSingleChoiceItems(reminder_radio, -1, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
switch(which)
{
case 0:
AlarmReceiver alarm = new AlarmReceiver();
alarm.CancelAlarm(getApplicationContext());
alarm.OneMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
case 1:
AlarmReceiver alarm1 = new AlarmReceiver();
alarm1.CancelAlarm(getApplicationContext());
alarm1.TenMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
case 2:
AlarmReceiver alarm2 = new AlarmReceiver();
alarm2.CancelAlarm(getApplicationContext());
alarm2.FifteenMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
case 3:
AlarmReceiver alarm3 = new AlarmReceiver();
alarm3.CancelAlarm(getApplicationContext());
alarm3.nMintAlarm(getApplicationContext());
Toast.makeText(getApplicationContext(), "Alarm", Toast.LENGTH_SHORT).show();
break;
}
dialog.dismiss();
}
});
public void onReceive(Context context, Intent intent) {
Toast.makeText(context, " Alarm Received !!! ", Toast.LENGTH_LONG).show();
}
public void CancelAlarm(Context context)
{
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent sender = PendingIntent.getBroadcast(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarmManager.cancel(sender);
}
public void OneMintAlarm(Context context)
{
AlarmManager alarms = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context,
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
1000 * 10, recurringDownload);
}
public void TenMintAlarm(Context context)
{
AlarmManager alarms = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context,
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
1000 * 600, recurringDownload);
}
public void FifteenMintAlarm(Context context)
{
AlarmManager alarms = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent intent = new Intent(context, AlarmReceiver.class);
PendingIntent recurringDownload = PendingIntent.getBroadcast(context,
0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarms.setRepeating(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(),
1000 * 900, recurringDownload);
}
public void nMintAlarm(Context context)
{
}
请建议做什么???谢谢
但我希望选中的选项被单击。怎么可能呢?是
是否需要将其状态存储在数据库或任何其他解决方案中
是的,您需要存储单选按钮的状态,这里是使用数据库的最佳选择?是否已在应用程序中使用数据库?为什么不想使用PreferenceManager?有什么问题吗?我正在使用数据库,是否可以在警报对话框中使用首选项?还是必须使用菜单选项来使用首选项?我在以前的项目中使用过,但在那里我在菜单选项中使用了同步选项。不,这不是强制性的。您所需要的只是将单选按钮的统计信息存储在首选项管理器的check preet answer中