android–DatePickerDialog

android–DatePickerDialog,第1张

概述我想在Androiddocumentation中找到简单的DatePickerDialog工作代码importandroid.app.Activity;importandroid.app.DatePickerDialog;importandroid.app.Dialog;importandroid.os.Bundle;importandroid.view.View;importandroid.widget.Button;importandroid.wid

我想在Android documentation中找到简单的DatePickerDialog工作代码

import androID.app.Activity;import androID.app.DatePickerDialog;import androID.app.Dialog;import androID.os.Bundle;import androID.vIEw.VIEw;import androID.Widget.button;import androID.Widget.DatePicker;import androID.Widget.TextVIEw;import java.util.Calendar;public class DatePickerDialogExample extends Activity {    private TextVIEw mDatedisplay;    private button mPickDate;    private int mYear;    private int mMonth;    private int mDay;    static final int DATE_DIALOG_ID = 0;    @OverrIDe    public voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.main);        mDatedisplay = (TextVIEw) findVIEwByID(R.ID.datedisplay);        mPickDate = (button) findVIEwByID(R.ID.pickDate);        mPickDate.setonClickListener(new VIEw.OnClickListener() {            public voID onClick(VIEw v) {                showDialog(DATE_DIALOG_ID);            }        });        final Calendar c = Calendar.getInstance();        mYear = c.get(Calendar.YEAR);        mMonth = c.get(Calendar.MONTH);        mDay = c.get(Calendar.DAY_OF_MONTH);        updatedisplay();    }    private voID updatedisplay() {        mDatedisplay.setText(                new StringBuilder()                        .append(mMonth + 1).append("-")                        .append(mDay).append("-")                        .append(mYear).append(" "));    }    private DatePickerDialog.OnDateSetListener mDateSetListener =            new DatePickerDialog.OnDateSetListener() {                public voID onDateSet(DatePicker vIEw, int year,                                      int monthOfYear, int dayOfMonth) {                    mYear = year;                    mMonth = monthOfYear;                    mDay = dayOfMonth;                    updatedisplay();                }            };    @OverrIDe    protected Dialog onCreateDialog(int ID) {        switch (ID) {            case DATE_DIALOG_ID:                return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,                        mDay);        }        return null;    }}

但是我遇到了奇怪的错误

02-09 15:37:26.491: ERROR/AndroIDRuntime(10174): FATAL EXCEPTION: main        androID.vIEw.InflateException: Binary XML file line #48: Error inflating class androID.Widget.ImageVIEw        at androID.vIEw.LayoutInflater.createVIEw(LayoutInflater.java:518)        at com.androID.internal.policy.impl.PhoneLayoutInflater.onCreateVIEw(PhoneLayoutInflater.java:56)        at androID.vIEw.LayoutInflater.createVIEwFromTag(LayoutInflater.java:568)        at androID.vIEw.LayoutInflater.rInflate(LayoutInflater.java:623)        at androID.vIEw.LayoutInflater.rInflate(LayoutInflater.java:626)        at androID.vIEw.LayoutInflater.rInflate(LayoutInflater.java:626)        at androID.vIEw.LayoutInflater.inflate(LayoutInflater.java:408)        at androID.vIEw.LayoutInflater.inflate(LayoutInflater.java:320)        at androID.vIEw.LayoutInflater.inflate(LayoutInflater.java:276)        at com.androID.internal.policy.impl.PhoneWindow.setContentVIEw(PhoneWindow.java:207)        at com.androID.internal.app.AlertController.installContent(AlertController.java:205)        at androID.app.AlertDialog.onCreate(AlertDialog.java:251)        at androID.app.Dialog.dispatchOnCreate(Dialog.java:307)        at androID.app.Activity.createDialog(Activity.java:886)        at androID.app.Activity.showDialog(Activity.java:2557)        at androID.app.Activity.showDialog(Activity.java:2524)        at uk.co.peterscrorner.DatePickerDialogExample.onClick(DatePickerDialogExample.java:33)        at androID.vIEw.VIEw.performClick(VIEw.java:2485)        at androID.vIEw.VIEw$PerformClick.run(VIEw.java:9080)        at androID.os.Handler.handleCallback(Handler.java:587)        at androID.os.Handler.dispatchMessage(Handler.java:92)        at androID.os.Looper.loop(Looper.java:123)        at androID.app.ActivityThread.main(ActivityThread.java:3683)        at java.lang.reflect.Method.invokeNative(Native Method)        at java.lang.reflect.Method.invoke(Method.java:507)        at com.androID.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)        at com.androID.internal.os.ZygoteInit.main(ZygoteInit.java:597)        at dalvik.system.NativeStart.main(Native Method)        Caused by: java.lang.reflect.InvocationTargetException        at java.lang.reflect.Constructor.constructNative(Native Method)        at java.lang.reflect.Constructor.newInstance(Constructor.java:415)        at androID.vIEw.LayoutInflater.createVIEw(LayoutInflater.java:505)        ... 27 more        Caused by: androID.content.res.Resources$NotFoundException: file res/drawable-mdpi/ic_dialog_info.png from drawable resource ID #0x108009b        at androID.content.res.Resources.loadDrawable(Resources.java:1714)        at androID.content.res.TypedArray.getDrawable(TypedArray.java:601)        at androID.Widget.ImageVIEw.(ImageVIEw.java:118)        at androID.Widget.ImageVIEw.(ImageVIEw.java:108)        ... 30 more        Caused by: java.io.fileNotFoundException: res/drawable-mdpi/ic_dialog_info.png        at androID.content.res.AssetManager.openNonAssetNative(Native Method)        at androID.content.res.AssetManager.openNonAsset(AssetManager.java:406)        at androID.content.res.Resources.loadDrawable(Resources.java:1706)        ... 33 more

解决方法:

在XML中添加TextVIEw和button

<TextVIEw    androID:ID="@+ID/searchText"    androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:text="TextVIEw" /><button    androID:ID="@+ID/search"    androID:layout_wIDth="wrap_content"    androID:layout_height="wrap_content"    androID:text="Search" />

在java文件中添加以下代码

public class DatePickerDialogExample extends Activity {    TextVIEw txtDate;    private int mYear, mMonth, mDay, mHour, mMinute;    @OverrIDe    protected voID onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentVIEw(R.layout.main);        txtDate = (TextVIEw) findVIEwByID(R.ID.searchText);        button search = (button) findVIEwByID(R.ID.search);        search.setonClickListener(new VIEw.OnClickListener() {        @OverrIDe        public voID onClick(VIEw v) {            // Process to get Current Date            final Calendar c = Calendar.getInstance();            mYear = c.get(Calendar.YEAR);            mMonth = c.get(Calendar.MONTH);            mDay = c.get(Calendar.DAY_OF_MONTH);            // Launch Date Picker Dialog            DatePickerDialog dpd = new DatePickerDialog(PrayTimeActivity.this,                    new DatePickerDialog.OnDateSetListener() {                        @OverrIDe                        public voID onDateSet(DatePicker vIEw, int year,                                int monthOfYear, int dayOfMonth) {                            // display Selected date in textBox                            txtDate.setText(dayOfMonth + "-"                                    + (monthOfYear + 1) + "-" + year);                        }                    }, mYear, mMonth, mDay);                dpd.show();            }        });    }}
总结

以上是内存溢出为你收集整理的android – DatePickerDialog全部内容,希望文章能够帮你解决android – DatePickerDialog所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1112939.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-29
下一篇2022-05-29

发表评论

登录后才能评论

评论列表(0条)

    保存