相关疑难解决方法(0)

Android:如何更改datepicker分隔符的颜色?

我的Android应用程序中有一个日期选择器,但现在我想将蓝色分隔符的颜色更改为绿色(请参阅本文下方的图像).Stackoverflow上还有其他一些 讨论相同的讨论,但没有一个讨论会给出解决方案.

所以我去看自己,发现实际上有一个android:datePickerStyle,还有一个android:divider.然而,我不知道分频器是否实际上是指日期选择器中的分频器.我尝试了两者的多种组合,但我似乎没有让它发挥作用.所以我的第一个问题:android:divider是否引用了datepicker中的分隔符,我怎么能用它来改变颜色?

因此,另一个选择应该是创建一个全新的自定义日期选择器.如果这让我能够改变分频器的颜色我就失望了.因此,我不得不看看一些 教程创建自定义日期选择器,但他们都不来定义分隔的颜色.分隔符根本没有列在xml文件或java文件中.

如果会有某种样板代码重新创建当前显示的日期选择器,包括设置分隔符颜色的代码,那将会很棒.希望这能让我复制它,只需更改分隔符的颜色设置.所以我的第二个问题:是否有人知道任何样板代码,它只是现在实现了datepicker(包括分隔符的定义)?

在此输入图像描述

java android themes datepicker android-layout

36
推荐指数
4
解决办法
6万
查看次数

如何仅在Android中使用Timepicker显示小时

我有一个应用程序,我只需要选择时间间隔的范围(以小时为单位),而不是本机TimePicker给出的完整时间。我们如何自定义TimePicker以让我们选择并仅在Android中显示小时格式?

android android-layout

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

限制时间选择器的时间范围

如何控制TimePicker,我只想显示从上午08:00到下午02:00的时间范围(从上午08:00到下午02:00隐藏所有)

我已经编写了完整的代码来显示TimePicker和自定义时间.

这是我的代码:

         case DIALOG_TIME:
            final Calendar c = Calendar.getInstance();
            int hour = c.get(Calendar.HOUR_OF_DAY);
            int minute = c.get(Calendar.MINUTE);

            // Create a new instance of TimePickerDialog and return it
            return new TimePickerDialog(this, lisTime, hour, minute,
            DateFormat.is24HourFormat(MainActivity.this));

        TimePickerDialog.OnTimeSetListener lisTime = new TimePickerDialog.OnTimeSetListener() {

        @Override
        public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
            // TODO Auto-generated method stub
            String meridiem = "";
            nim = minute;
            Calendar datetime = Calendar.getInstance();
            datetime.set(Calendar.HOUR_OF_DAY, hourOfDay);
            datetime.set(Calendar.MINUTE, minute);

            if (datetime.get(Calendar.AM_PM) == Calendar.AM)
                meridiem = "AM";
            else if …
Run Code Online (Sandbox Code Playgroud)

java android datetimepicker jodatime android-timepicker

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

如何更改 Android TimePicker 分钟间隔?

我正在编写一个应用程序,用户需要在其中指定给定的时间点,但我似乎无法弄清楚如何设置用户可以选择的分钟值,只使用 5 的增量而不是 1 的增量.

简单地说,当用户滚动可用金额时,他/她只能看到 0、5、10、15 等。

先感谢您。

android minute timepicker

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

如何实现android Minutes-Seconds选择器?

我需要实现一个对话框,用户可以在其中输入分钟和秒的时间.例如:6分30秒.在那里我还需要一个分钟数的上限(即,分钟范围从0到10秒,从0到60秒.)

但正如此处所讨论的,android TimePicker仅提供小时和分钟.我已经看过一些关于添加秒数的帖子,但没有关于删除小时和添加秒数的内容.也许没有办法对会议记录施加限制.

我看过一些帖子建议使用NumberPicker创建自定义时间选择器,但也注意到NumberPicker用于内部目的而不应使用.这似乎是一个Catch-22.

我可以尝试修改TimePicker或NumberPicker的源代码,但我并不了解理解它们如何工作以及维护自定义版本所需的时间.

我想这让我实现了一个自定义的Minutes-Seconds选择器.使用上下按钮移动数字看起来并不太难,但我不知道如何允许用户滑动以滚动每个"滚轮"中的数字.

有什么建议?

android timepicker numberpicker

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

访问 TimePickerDialog 的 NumberPicker 对象而不是 Class.forName 的替代方法

我正在尝试创建一个自TimePickerDialog定义的小时和分钟的自定义间隔,并设法通过使用这个问题的答案来解决它。

问题是 Android Studio 显示以下警告:

不支持通过反射访问内部 API,并且可能无法在所有设备上或将来使用。使用反射访问隐藏/私有的 Android API 是不安全的;它通常不适用于其他供应商的设备,并且可能会突然停止工作[...]

问题在第一行:

Class<?> classForid = Class.forName("com.android.internal.R$id");

Field timePickerField = classForid.getField("timePicker");
TimePicker mTimePicker = findViewById(timePickerField.getInt(null));
Field minuteField = classForid.getField("minute");
Field hourField = classForid.getField("hour");
NumberPicker minutePicker = mTimePicker.findViewById(minuteField.getInt(null));
NumberPicker hourPicker = mTimePicker.findViewById(hourField.getInt(null));
Run Code Online (Sandbox Code Playgroud)

我需要一些访问这两个NumberPicker对象的替代方法。

java android timepickerdialog

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