首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Android中的TimePickerDialog中设置自定义分钟间隔

在Android中,要在TimePickerDialog中设置自定义分钟间隔,可以通过自定义TimePickerDialog实现。以下是一个示例代码:

代码语言:java
复制
import android.app.TimePickerDialog;
import android.content.Context;
import android.os.Bundle;
import android.widget.TimePicker;

import androidx.annotation.NonNull;

public class CustomTimePickerDialog extends TimePickerDialog {

    private final int mMinuteInterval;

    public CustomTimePickerDialog(@NonNull Context context, int themeResId, int minuteInterval, OnTimeSetListener listener, int hourOfDay, int minute, boolean is24HourView) {
        super(context, themeResId, listener, hourOfDay, minute, is24HourView);
        mMinuteInterval = minuteInterval;
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        TimePicker timePicker = (TimePicker) findViewById(android.R.id.timePicker1);
        if (timePicker != null) {
            timePicker.setMinute(mMinuteInterval * (timePicker.getMinute() / mMinuteInterval));
            timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
                @Override
                public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
                    if (minute % mMinuteInterval != 0) {
                        int newMinute = mMinuteInterval * (minute / mMinuteInterval);
                        view.setCurrentMinute(newMinute);
                    }
                }
            });
        }
    }
}

在这个示例中,我们创建了一个名为CustomTimePickerDialog的自定义TimePickerDialog类,并在其中设置了一个名为mMinuteInterval的成员变量,用于存储自定义的分钟间隔。

在onCreate方法中,我们获取了TimePicker控件,并设置了其分钟间隔。我们还添加了一个OnTimeChangedListener,以确保在用户更改分钟时,分钟值始终是自定义分钟间隔的倍数。

要使用此自定义TimePickerDialog,请在您的代码中创建一个新的CustomTimePickerDialog实例,并传递所需的参数,包括自定义分钟间隔。例如:

代码语言:java
复制
int minuteInterval = 15;
CustomTimePickerDialog timePickerDialog = new CustomTimePickerDialog(this, null, minuteInterval, new TimePickerDialog.OnTimeSetListener() {
    @Override
    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
        // 处理用户设置的时间
    }
}, 12, 0, true);
timePickerDialog.show();

这将创建一个具有自定义分钟间隔为15分钟的TimePickerDialog,并在用户设置时间时调用OnTimeSetListener。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

1分45秒

Elastic-5分钟教程:如何为你的搜索应用设置同义词

2分33秒

hhdesk程序组管理

9分51秒

day07_118_尚硅谷_硅谷p2p金融_设置手势密码中ToggleButton状态的设置

56秒

PS小白教程:如何在Photoshop中给灰色图片上色

18秒

四轴激光焊接示教系统

7分5秒

MySQL数据闪回工具reverse_sql

1分10秒

PS小白教程:如何在Photoshop中制作透明玻璃效果?

2分4秒

PS小白教程:如何在Photoshop中制作出水瓶上的水珠效果?

1分26秒

PS小白教程:如何在Photoshop中完美合并两张图片?

2分7秒

基于深度强化学习的机械臂位置感知抓取任务

26分40秒

晓兵技术杂谈2-intel_daos用户态文件系统io路径_dfuse_io全路径_io栈_c语言

3.4K
领券