【问题标题】:Android's CalendarView widget for lower API用于较低 API 的 Android 的 CalendarView 小部件
【发布时间】:2017-11-01 14:53:13
【问题描述】:

我正在创建一个游戏,它显示一个日历和一个问题:圣诞节是什么时候?如果你在 12 月 25 日按下它,就会出现一个祝酒词“恭喜”。这是一款精彩的游戏,并且运行良好。 我正在使用 CalendarView 小部件,它适用于 API 级别 24。

import android.widget.CalendarView;
import android.widget.CalendarView.OnDateChangeListener;

问题在于尝试使用较低版本的 Android 时。然后,当我调用 initializeCalendar() 函数时,出现错误:

调用需要 API 级别 24(当前最低为 19)

我有什么选择?我需要使用 API 19。 任何想法将不胜感激。

【问题讨论】:

  • 我没有看到 initializeCalendar() 方法 on CalendarView
  • @CommonsWare,你是对的!!对不起!!这是从教程中复制的功能!我删除了一行,现在问题是 Simple DateFormat (Call requires API level 24 (current min is 19): new android.icu.text.SimpleDateFormat) 我会解决这个错误。谢谢!

标签: android calendarview


【解决方案1】:

函数 initializeCalendar() 是这样的:

公共无效初始化日历(){ calendar = (CalendarView) findViewById(R.id.simpleCalendarView);

    // sets the first day of week according to Calendar.
    // here we set Monday as the first day of the Calendar
    calendar.setFirstDayOfWeek(2);
    String string_date = "1-8-2017";
    long milliseconds = 0;

    SimpleDateFormat f = new SimpleDateFormat("dd-mm-yyyy");
    try {
        Date d = f.parse(string_date);
        milliseconds = d.getTime();
    } catch (ParseException e) {
        e.printStackTrace();
    }
    ...

还有问题。谢谢@CommonsWare 的评论。

【讨论】:

  • 完成。我为 SimpleDateFormat 导入了不正确的类。正确的是 java.text.SimpleDateFormat。
猜你喜欢
  • 1970-01-01
  • 2022-01-23
  • 2015-11-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多