为什么我无法在LockScreen中获取Settings.System.DATE_FORMAT?

问题描述

| 这是android中LockScreen的一些代码。 日期格式为:
mDateFormatString = getContext().getString(R.string.full_wday_month_day_no_year);
我设定:
mDateFormatString =Settings.System.getString(getContext().getContentResolver(),Settings.System.DATE_FORMAT) ;
为什么我无法在LockScreen中获取Settings.System.DATE_FORMAT?
private void resetStatusInfo(KeyguardUpdateMonitor updateMonitor) {
    mShowingBatteryInfo = updateMonitor.shouldShowBatteryInfo();
    mPluggedIn = updateMonitor.isDevicePluggedIn();
    mbatterylevel = updateMonitor.getbatterylevel();

    /* for dual sim,by jing.wang */
    mStatus[SimCardID.ID_ZERO.toInt()] = getCurrentStatus(updateMonitor.getSimstate());
    if (isDualMode) {
        mStatus[SimCardID.ID_ONE.toInt()] = getCurrentStatus(updateMonitor.getSimstate (SimCardID.ID_ONE));
        updateLayout(mStatus[SimCardID.ID_ZERO.toInt()],SimCardID.ID_ZERO,mStatus[SimCardID.ID_ONE.toInt()]);
        updateLayout(mStatus[SimCardID.ID_ONE.toInt()],SimCardID.ID_ONE,mStatus[SimCardID.ID_ZERO.toInt()]);
    } else {
        updateLayout(mStatus[SimCardID.ID_ZERO.toInt()]);
    }

    refreshBatteryStringAndIcon();
    refreshAlarmdisplay();

    mTimeFormat = DateFormat.getTimeFormat(getContext());
    mDateFormatString = getContext().getString(R.string.full_wday_month_day_no_year);

    refreshTimeAndDatedisplay();
    updateStatusLines();
}
编辑:我想修改锁屏代码。我想显示在设置中设置的日期格式。但是现在我将日期格式设置为“ dd-MM-yyyy \”,它无法在锁定屏幕中显示。日期以mDateFormatString的格式显示
mDateFormatString = getContext().getString(R.string.full_wday_month_day_no_year); 
这是refreshTimeAndDatedisplay的代码
private void refreshTimeAndDatedisplay() {
    mDate.setText(DateFormat.format(mDateFormatString,new Date()));
} 
    

解决方法

        您可能应该看一下:如何使用在“设置”中默认设置的日期格式? (getDateFormatOrder为您提供用户的格式设置)