标签: android-timepicker

在Android中显示12或24小时格式的TimePicker

我的TimePickerDialog有问题.首先检测用户的设备是否有12或24小时格式的时间:

…
String format;
…
if (DateFormat.is24HourFormat(this)) {
Log.i("control","Format 24");
format=("24");
} else {
 Log.i("control","Format 12");
format=("12");
}
…
Run Code Online (Sandbox Code Playgroud)

现在我打算使用am或pm选项显示TimePicker,具体取决于格式:

…
if(format.equals("24"){
view.setIs24HourView(true);
} else {
view.setIs24HourView(true);
} …
Run Code Online (Sandbox Code Playgroud)

这是完整的代码TimePickerDialog:

public class AlarmPreferencesActivity extends ListActivity
…
TimePickerDialog timePickerDialog = new TimePickerDialogs(this, new TimePickerDialog.OnTimeSetListener(){

            @Override
            public void onTimeSet(TimePicker view, int hours, int minutes) {

                Calendar newAlarmTime = Calendar.getInstance();
                newAlarmTime.set(Calendar.HOUR_OF_DAY, hours);
                newAlarmTime.set(Calendar.MINUTE, minutes);
                newAlarmTime.set(Calendar.SECOND, 0);
                alarm.setAlarmTime(newAlarmTime);
                alarmPreferenceListAdapter
                .setMathAlarm(getMathAlarm());
                alarmPreferenceListAdapter
                .notifyDataSetChanged();

            }},
            alarm.getAlarmTime().get(Calendar.HOUR_OF_DAY),
            alarm.getAlarmTime().get(Calendar.MINUTE), true);


        timePickerDialog.setCancelable(true);
        timePickerDialog.setCustomTitle(getLayoutInflater().inflate(R.layout.custom_hours, null));
        timePickerDialog.show();
        }
Run Code Online (Sandbox Code Playgroud)

我的问题是我不知道在哪里包括view.setIs24HourView (true) …

android dialog time-format android-timepicker

2
推荐指数
1
解决办法
1万
查看次数

使用TimePicker或NumberPicker查看对话框首选项时旋转Android设备会导致应用程序崩溃

我做了一个自定义DialogPreference,它使用两个NumberPicker小部件,允许用户选择一天中的一小时以及另一个DialogPreference允许用户使用TimePicker小部件选择时间的自定义.

只要对话框未打开并且我旋转屏幕,一切都按预期工作.但是,如果对话框打开并且屏幕旋转,则整个应用程序崩溃.我已经在onSaveInstanceStateonRestoreInstanceState方法中放置了断点,并且已经验证了恢复所需的所有内容都是DialogPreference有序的,onDialogClosed每次都会使用我自定义中的所有其他自定义代码来触发该方法DialogPreference.

我正在建设以下内容:

  • 最低SDK:16
  • 目标SDK:20
  • 编译SDK:20
  • 构建工具:20.0.0

我正在Verizon Galaxy Nexus上运行Android 4.4.3(KitKat).

这是给出的堆栈跟踪:

java.lang.IndexOutOfBoundsException: setSpan (4 ... 4) ends beyond length 0
  at android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:1016)
  at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:592)
  at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:588)
  at android.text.Selection.setSelection(Selection.java:76)
  at android.widget.EditText.setSelection(EditText.java:87)
  at android.widget.NumberPicker$SetSelectionCommand.run(NumberPicker.java:2123)
  at android.os.Handler.handleCallback(Handler.java:733)
  at android.os.Handler.dispatchMessage(Handler.java:95)
  at android.os.Looper.loop(Looper.java:136)
  at android.app.ActivityThread.main(ActivityThread.java:5001)
  at java.lang.reflect.Method.invokeNative(Method.java)
  at java.lang.reflect.Method.invoke(Method.java:515)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:785)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:601)
  at dalvik.system.NativeStart.main(NativeStart.java)
Run Code Online (Sandbox Code Playgroud)

android timepicker android-preferences numberpicker android-timepicker

2
推荐指数
1
解决办法
2653
查看次数

在Android L中获取Holo Timepicker

我正在使用支持库获取新的timepicker.但我需要以30分钟的时间间隔显示Holo Style时间选择器.

我使用以下代码:

 public void showTimePickerDialog(Calendar calendar) {
    selectedCalendarInstance = calendar;
    TimePickerDialog timePickerDialog = new TimePickerDialog(activity, R.style.DialogTheme, this, 10, 0, false);
    timePickerDialog.setTitle(null);
    timePickerDialog.show();
}
Run Code Online (Sandbox Code Playgroud)

但我需要以下风格的时间戳

在此输入图像描述

请帮忙!

提前致谢!

android android-timepicker android-5.0-lollipop

2
推荐指数
1
解决办法
2143
查看次数

如何使用TimePicker对话框将默认时间设置为指定的小时?

我有一个片段,它启动一个TimePicker对话框供用户选择一天中的时间.我希望对话框启动时间为下午4:00时显示的默认时间.然后,用户可以选择他们自己的时间.我一直在尝试setHour和setMinute但无济于事.

下面是设置为当前时间的TimePicker的部分代码.请告知如何修改以在TimePicker对话框首次启动时始终显示下午4:00.

...
public Dialog onCreateDialog(Bundle savedInstanceState) {
    cal = Calendar.getInstance();
    hour = cal.get(Calendar.HOUR_OF_DAY);
    minute = cal.get(Calendar.MINUTE);

    TimePickerDialog dialog = new TimePickerDialog(getActivity(),this,hour,minute,
            dialog.setTitle("Select...");

    return dialog;
}
Run Code Online (Sandbox Code Playgroud)

android android-fragments android-timepicker

2
推荐指数
1
解决办法
5572
查看次数

在对话框中更改时间选择器背景色

我的自定义对话框中有一个时间选择器。结果是:

在此处输入图片说明

这是我的代码:

<style name="DialogStyler2" parent="Theme.AppCompat.Light.Dialog.Alert">
    <item name="android:background">#FFFFFF</item>
    <item name="android:windowSoftInputMode">stateUnspecified|adjustPan</item>
    <item name="android:windowNoTitle">true</item>
</style>

final Dialog dialog = new Dialog(SabadKharid_s1.this, R.style.DialogStyler2);
                    dialog.setContentView(R.layout.dialogtime);

                    timePicker = (TimePicker) dialog.findViewById(R.id.timePicker);
                    timePicker.setIs24HourView(true);

                    WindowManager.LayoutParams lp = new WindowManager.LayoutParams();
                    lp.copyFrom(dialog.getWindow().getAttributes());
                    lp.width = WindowManager.LayoutParams.MATCH_PARENT;
                    lp.height = WindowManager.LayoutParams.WRAP_CONTENT;
                    dialog.show();
                    dialog.getWindow().setAttributes(lp);
Run Code Online (Sandbox Code Playgroud)

如您所见,textView标题中的小时和分钟为白色。如何更改其背景颜色?

android android-dialog android-timepicker

2
推荐指数
2
解决办法
2691
查看次数

Android:时间选择器中是否可以仅显示排序?00:15:30:45

我只需要[00 , 15 , 30 ,45]在时间选择器中显示我已搜索但找不到任何内容,是否有人知道如何实现此目的?

像这样

android android-timepicker

2
推荐指数
1
解决办法
144
查看次数

Android日期/时间选择器不是对话框

我想在我的主视图中添加Android的时间和日期选择器并始终显示它.现在它只能作为一个对话框.有没有办法将它用作视图而不是对话框?

有没有可以做到这一点的图书馆?

提前致谢

android android-datepicker android-timepicker

1
推荐指数
1
解决办法
1468
查看次数

如何根据Android中的时区选择转换时间?

我的应用程序下载购物详细信息。
示例:伦敦时间 5:30 下载购物详细信息。
现在,更改任何其他时区,以便根据所选时区转换下载时间。
时区正在从日期/时间下的设置更改。 如何以编程方式实现这一点?那么如何根据时区选择转换下载时间

timezone datetime android android-studio android-timepicker

1
推荐指数
1
解决办法
2192
查看次数

更改TimePickerDialog样式

我想更改TimePicker的样式,但是无法更改钟面和标题背景的颜色。这是我的XML样式代码-

    <style name="DateTimeDialog" parent="Theme.AppCompat.Dialog">
        <item name="android:colorBackground">@color/colorWhite</item>
        <item name="android:textColorPrimary">#000000</item>
        <item name="android:headerBackground">#000000</item>
        <item name="android:textColorSecondary">#000000</item>
        <item name="android:button">@color/colorWhite</item>
        <item name="android:colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="android:colorAccent">@color/colorSecondary</item>
        <item name="android:textColor">@color/colorSecondaryDark</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

原色是海军蓝色,而强调色/次要颜色是浅蓝色(以防万一,您希望将其描绘出来)。这是目前的样子-

当前风格

在此处输入图片说明

我希望能够更改灰色背景。

注意:“ android:background”属性在这里不起作用。它仅更改标题中显示的时间中“:”后面的微小区域的颜色。任何帮助/资源表示赞赏。谢谢!

android android-dialog android-timepicker android-styles

1
推荐指数
1
解决办法
1918
查看次数

如何从集成测试中选择颤振时间选择器中的时间

我正在为 Flutter 应用程序编写集成测试,我需要打开时间选择器并选择一个时间,它是 android 中的时间选择器对话框,我可以点击选择器上方的时间,然后点击确定和取消按钮,但我不能更改表盘的选定时间。查看他们的小部件测试,他们正在使用偏移量对其进行测试,我不确定如何从集成测试中执行此操作。我创建了一个演示并截取了 flutter 小部件树的屏幕截图,您可以在其中看到拨号和手势检测器等,但没有任何键可以找到,也无法通过文本进行查找,深入研究源他们创建了一个 _TappableLabel 列表,它从画家那里获取文本,有没有人有办法做到这一点?

颤动小部件树

android-timepicker flutter

1
推荐指数
1
解决办法
344
查看次数