当前位置: 首页 > article >正文

android13打基础: timepicker控件


public class Ch4_TimePickerActivity extends AppCompatActivity implements TimePickerDialog.OnTimeSetListener {

    private TextView tv_time; // 声明一个文本视图对象
    private TimePicker tp_time; // 声明一个时间选择器对象

    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_time_picker_ch4);

        tv_time = findViewById(R.id.tv_time);
        tp_time = findViewById(R.id.tp_time);


        findViewById(R.id.btn_time).setOnClickListener(v -> {
            // 获取日历的一个实例,里面包含了当前的时分秒
            Calendar calendar = Calendar.getInstance();
            // 构建一个时间对话框,该对话框已经集成了时间选择器。
            // TimePickerDialog的第二个构造参数指定了时间监听器
            TimePickerDialog dialog = new TimePickerDialog(this, this,
                    calendar.get(Calendar.HOUR_OF_DAY), // 小时
                    calendar.get(Calendar.MINUTE), // 分钟
                    true); // true表示24小时制,false表示12小时制
            dialog.show(); // 显示时间对话框
        });
        findViewById(R.id.btn_ok).setOnClickListener(v -> {
            // 获取时间选择器tp_time设定的小时和分钟
            String desc = String.format("您选择的时间是%d时%d分",
                    tp_time.getCurrentHour(), tp_time.getCurrentMinute());
            tv_time.setText(desc);
        });

    }

    // 一旦点击时间对话框上的确定按钮,就会触发监听器的onTimeSet方法
    @Override
    public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
        // 获取时间对话框设定的小时和分钟
        String desc = String.format("您选择的时间是%d时%d分", hourOfDay, minute);
        tv_time.setText(desc);
    }
}

界面

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <Button
        android:id="@+id/btn_time"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="请选择时间"
        android:textColor="@color/black"
        android:textSize="17sp" />

    <!-- timePickerMode取值spinner表示下拉框风格,取值clock表示钟表风格 -->
    <TimePicker
        android:id="@+id/tp_time"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:calendarViewShown="false"
        android:timePickerMode="spinner"
        android:gravity="center"
        android:spinnersShown="true" />

    <Button
        android:id="@+id/btn_ok"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:gravity="center"
        android:text="确  定"
        android:textColor="@color/black"
        android:textSize="17sp" />

    <TextView
        android:id="@+id/tv_time"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingLeft="5dp"
        android:textColor="@color/black"
        android:textSize="17sp" />

</LinearLayout>


http://www.kler.cn/a/576109.html

相关文章:

  • Manus邀请码获取方法 + 使用指南(直接领取pdf)
  • Vue项目实战
  • uniapp 常用 UI 组件库
  • MAC电脑常用操作
  • App Standby省电机制流程
  • 前端vue项目打包及部署的详细说明
  • Docker安全优化与隔离
  • 【QT】-易错点笔记-2025-2-7
  • S32K3 MCU时钟部分
  • 第十四届蓝桥杯填空题:日期统计 01串熵
  • Yashan DB 体系结构
  • [论文阅读]Evaluations of Machine Learning Privacy Defenses are Misleading
  • 音视频入门基础:RTP专题(14)——FFmpeg源码中,对H.264的各种RTP有效载荷结构的解析
  • windows下使用msys2编译ffmpeg
  • mapbox高阶,结合threejs(threebox)添加三维球体
  • 国内外网络安全政策动态(2025年2月)
  • Trae IDE新建C#工程
  • IDEA2023 使用枚举类型java: 非法字符: ‘\ufffd‘
  • PostgreSQL常用系统表
  • 目录扫描工具深度对比:Dirb、Dirsearch、DirBuster、Feroxbuster 与 Gobuster