【问题标题】:How to replace old getCurrentHour() with new getHour()?如何用新的 getHour() 替换旧的 getCurrentHour()?
【发布时间】:2015-08-28 05:50:19
【问题描述】:

我有这些代码,并且可以很好地显示 timePicker 的时间。代码使用 getCurrentHour 和 getCurrentMinute。

public void setTime(View view) {
    int hour = timePicker1.getCurrentHour();
    int min = timePicker1.getCurrentMinute();
    showTime(hour, min);
}

public void showTime(int hour, int min) {
    if (hour == 0) {
        hour += 12;
        format = "AM";
    }
    else if (hour == 12) {
        format = "PM";
    } else if (hour > 12) {
        hour -= 12;
        format = "PM";
    } else {
        format = "AM";
    }
    time.setText(new StringBuilder().append(hour).append(" : ").append(min)
            .append(" ").append(format));
}

android Studio 告诉我改用 new getHour() 和 getMinute()。

当我在上面的代码中使用它们时,应用程序停止并崩溃。为什么以及如何正确使用它们。

这是 logcat 中的错误: 引起:java.lang.NoSuchMethodError:Landroid/widget/TimePicker类中没有虚拟方法getHour()I;或其超类('android.widget.TimePicker' 的声明出现在 /system/framework/framework.jar:classes2.dex 中)

【问题讨论】:

  • 你要看看this link
  • 如果您使用的是 android.widget.TimePicker,函数是 getHour() 而不是 getHours() 和 getMinute() 不是 getMinutes()
  • 是:新函数是getHour()和getMinute()

标签: android


【解决方案1】:

您可以使用android.os.Build.VERSION.SDK_INT查看SDK版本:

int hour = 0;
int min = 0;

int currentApiVersion = android.os.Build.VERSION.SDK_INT;
if (currentApiVersion > android.os.Build.VERSION_CODES.LOLLIPOP_MR1){
    hour = timePicker1.getHour();
    min = timePicker1.getMinute();
} else {
    hour = timePicker1.getCurrentHour();
    min = timePicker1.getCurrentMinute();
}

【讨论】:

    【解决方案2】:

    好的,它与模拟器中的新时间函数 getMinute() 和 getHour() 配合得很好,所以问题可能是因为使用了 API。这两个函数需要 API 23。

    【讨论】:

      【解决方案3】:

      这个答案就是你所需要的,不要遵循其他指南。进行检查,然后使用timePicker.getCurrentHourtimePicker.getCurrentHour 这是API 23 下面的。对于 23 岁及以上的用户,请使用 timePicker.getHourtimePicker.getMinute 分钟。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-04-20
        • 2015-08-29
        • 1970-01-01
        • 1970-01-01
        • 2010-12-10
        • 2013-02-19
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多