【问题标题】:old datepicker is displayed in android 4.3旧的日期选择器在 android 4.3 中显示
【发布时间】:2014-08-05 10:02:40
【问题描述】:

我做了一个 android 活动,因为我使用了 android 默认 datepicker 对话框,我正在运行它我得到了 android 版本的旧类型 datepicker,如下图所示,我想要最新版本的 datepicker 作为在第二个屏幕中显示,

代码

    DestAdapter adapter;
    public static final String[] MONTHS = { "Jan", "Feb", "Mar", "Apr", "May",
            "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };

    private Calendar cal;
    private int dy;
    private int month;
    private int year;
    int flag = 0;
    @Override
    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_new_book);
tv_from.setOnClickListener(new OnClickListener() {

            @SuppressWarnings("deprecation")
            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                flag = 1;
                showDialog(0);
            }
        });
}
@Override
    @Deprecated
    protected Dialog onCreateDialog(int id) {
        return new DatePickerDialog(this, datePickerListener, year, month, dy);
    }

    private DatePickerDialog.OnDateSetListener datePickerListener = new DatePickerDialog.OnDateSetListener() {
        public void onDateSet(DatePicker view, int selectedYear,
                int selectedMonth, int selectedDay) {
            if (flag == 1) {
                tv_from.setText(selectedYear + "/" + selectedMonth + "/"
                        + selectedDay);
            } else if (flag == 2) {
                tv_to.setText(selectedYear + "/" + selectedMonth + "/"
                        + selectedDay);
            }

        }
    };


}

清单

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.eps.blancatours"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="19" />

    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.CALL_PHONE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".ui.SplashActivity"
            android:label="@string/app_name"
            android:screenOrientation="portrait" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

【问题讨论】:

  • 在此处发布清单和 project.properties
  • 您在哪个设备上测试过?
  • @RanjitPatis- samsung galaxy grand2
  • 你在其他设备上测试过吗?
  • @RanjitPati-yep,但问题是我在其他应用程序中使用了相同的代码并获得了新的 datePicker ......所以变得奇怪......!!! :(

标签: android datepicker android-dialog android-4.3-jelly-bean


【解决方案1】:

进入清单文件并找到您的日期选择器代码所在的活动名称 并使用&lt;activity&gt; 标签内的android:theme 属性为该活动提供最新主题

您的代码很完美,没有错误或任何错误,您使用的是旧主题,这就是它看起来像这样的原因。现在只需将其更改为更新的主题,您就会得到结果

较新的主题,即支持较新版本的主题以及以您想要的方式显示日期选择器的主题 使用

Theme_Holo_Light_Dialog_NoActionBar in activity tab of manifest file

或者您可以将主题传递给日期选择器,有接受主题的日期选择器的构造函数

    DatePickerDialog dpd = new DatePickerDialog(this,
                android.R.style.Theme_Holo_Light_Dialog_NoActionBar, 
new DateListener(v), mTime.year, mTime.month, mTime.monthDay);

【讨论】:

  • 你的完美解决方案,谢谢..:) 但我有问题,但你能告诉我如何将主题设置为微调器以及显示最新的主题。提前谢谢
  • 欢迎兄弟,以上两个链接供参考,希望对您实现spinner相关解决方案有所帮助
  • 好的,谢谢亲爱的支持。:)
【解决方案2】:

我得到了解决方案,实际上我已经将我的活动主题设置如下,其他api级别不支持,

  android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" 

我已经改变了它,并得到了想要的解决方案......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-01
    • 1970-01-01
    • 2013-07-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多