Android 如何通过单击按钮获取当前时间?

Android 如何通过单击按钮获取当前时间?,android,Android,我知道我不是第一个问这个问题的人,我需要做的是当我点击按钮关闭当前活动时,我想显示当前时间 这将进行以下验证。 1、在当前活动中,我有一个时间选择器,如果我选择任何时间,单击保存按钮,它将显示所选时间并关闭当前活动 2、如果我没有从时间选择器中选择任何时间,则在保存按钮上单击我想要显示当前时间 对我来说,第一个工作正常,但第二个总是显示为空 时间选择器时间: mTimePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedList

我知道我不是第一个问这个问题的人,我需要做的是当我点击按钮关闭当前活动时,我想显示当前时间

这将进行以下验证。

1、在当前活动中,我有一个时间选择器,如果我选择任何时间,单击保存按钮,它将显示所选时间并关闭当前活动

2、如果我没有从时间选择器中选择任何时间,则在保存按钮上单击我想要显示当前时间

对我来说,第一个工作正常,但第二个总是显示为空

时间选择器时间:

mTimePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
            @Override
            public void onTimeChanged(TimePicker timePicker, int i, int i1) {
                int hour = i % 12;
                mselectedTime = (String.format("%02d:%02d %s", hour == 0 ? 12 : hour, i1, i < 12 ? "AM" : "PM"));
            }
        });
这里第二个吐司显示时间,但第一个吐司始终显示为空。我需要在第一个吐司中显示时间为04:50 Am/Pm格式

谁能告诉我哪里出的错吗

DateFormat dateFormat = new SimpleDateFormat("hh.mm aa");
        String dateString = dateFormat.format(new Date()).toString();
        Toast.makeText(this,"Current time :"+ dateString,Toast.LENGTH_LONG).show();
您可能导入了错误的软件包

import java.text.SimpleDateFormat;
import java.text.DateFormat;
import java.util.Date;

使用日历实例,您可以获取当前的小时和分钟

    Calendar c;
        private int mhour;
        private int mminute;
c = Calendar.getInstance();
mhour = c.get(Calendar.HOUR);
mminute = c.get(Calendar.MINUTE);

// you will get current hour and minutes of device time 

另请参阅第二个toast中的,您需要重新获取时间,然后将其添加到toast中,而不是添加到
SimpleDataFormat
。代码如下:

Date currentTime = Calendar.getInstance().getTime();
SimpleDateFormat dateFormat = new SimpleDateFormat("hh.mm.ss aa");
String output = dateFormat.format(currentTime);
Toast.makeText(getApplicationContext(),"Time Is :" + output, Toast.LENGTH_LONG).show();

什么是mSelectedTime?在时间选择器中,当您实现它时,有一个覆盖函数,它显示选定的时间,您应该在该函数中检查您试图将字符串与不正确的
=
进行比较的时间。尝试使用
mSelectedTime.isEquals(“null”)。顺便说一句,为什么要使用字符串比较来检查时间?请使用.isEqual()而不是==
Date currentTime = Calendar.getInstance().getTime();
SimpleDateFormat dateFormat = new SimpleDateFormat("hh.mm.ss aa");
String output = dateFormat.format(currentTime);
Toast.makeText(getApplicationContext(),"Time Is :" + output, Toast.LENGTH_LONG).show();