【问题标题】:restore date from sharedpreferences and show change in inline datepicker in android从 sharedpreferences 恢复日期并在 android 中显示内联 datepicker 的更改
【发布时间】:2011-05-13 11:19:47
【问题描述】:

我制作了一个 android 应用程序,我在其中获取用户的出生日期并将它们存储为 SharedPreferences 键值对中的三个整数。

使用内联日期选择器选择日期。

我希望用户再次打开时选择的日期相同,而不是显示今天的日期。

如何使用Sharedpreferences 键值对数据并在内联日期而不是今天的日期中显示?

【问题讨论】:

标签: java android android-layout android-widget android-manifest


【解决方案1】:

您好,我找到了有关如何设置内联日期选择器的答案 这是代码

OnDateChangedListener listener = new OnDateChangedListener() {

        @Override
        public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            mYear = year;
            mMonth = monthOfYear;
            mDay = dayOfMonth;
        }
    };
    date.init(prefs.getInt("year",1920),prefs.getInt("month",0),prefs.getInt("day",1),listener);

我犯的错误是没有使用导致应用程序强制关闭的监听器

【讨论】:

    【解决方案2】:

    在这里寻找线索...http://developer.android.com/resources/tutorials/views/hello-datepicker.html

    我认为您可以将 Calendar.YEAR[.MONTH|.DAY_OF_MONTH] 替换为您对应用首选项的调用:

    final Calendar c = Calendar.getInstance();
    mYear = c.get(Calendar.YEAR);
    mMonth = c.get(Calendar.MONTH);
    mDay = c.get(Calendar.DAY_OF_MONTH);
    

    【讨论】:

    • 我想我有一个解决方案,但它强制关闭应用程序有一个名为 init(int year,int month,int day,listener) 的方法,用于我的日期选择器,名称为 date 我正在编写代码日期.init(year,month,day,null) 我正在使用 null,因为我没有侦听器,但应用程序因此而强制关闭。我哪里错了
    猜你喜欢
    • 2013-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多