0

カスタム リスト ビューを実装しました。4 行目に year(Textview) があります。ユーザーが年をクリックすると、日付ピッカーを表示し、日付ピッカーの値を年 (Textview) で更新する必要があります。誰でもこれを行う方法を教えてもらえますか? Androidで利用できるiPhoneスタイルの日付ピッカーはありますか?

ありがとう

4

1 に答える 1

0

onlist アイテムをクリックすると、この行を書くことができます

                showDialog(DATE_DIALOG_ID);

このメソッドでは、このコードを書くことができます

@Override
    public Dialog onCreateDialog(int id) {
        switch (id) {
        case DATE_DIALOG_ID:
            return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,
                    mDay);

日時ピッカーコード

private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {
        public void onDateSet(DatePicker view, int year, int monthOfYear,
                int dayOfMonth) {
            mYear = year;
            mMonth = monthOfYear;
            mDay = dayOfMonth;

            updateFromDateDisplay(false);

        }
    };

    private void updateFromDateDisplay(boolean flag) {
        String mTempDay = "", mTempMonth = "";
        if (mDay < 10) {
            mTempDay = returnProperDateMonth(mDay);
        } else {
            mTempDay = Integer.toString(mDay);
        }

        if (mMonth < 10) {
            mTempMonth = returnProperDateMonth(mMonth + 1);
        } else {
            mTempMonth = Integer.toString(mMonth + 1);
        }
        if(flag){
            startsOn.setText(new StringBuilder().append(mTempDay).append("/")
                    .append(mTempMonth).append("/").append(mYear).append(""));
        }else{

            if (mWhichDatePicker == 3) {
                startsOn.setText(new StringBuilder().append(mTempDay).append("/")
                        .append(mTempMonth).append("/").append(mYear).append(""));
                startsOn.setSelection((new StringBuilder().append(mTempDay)
                        .append("/").append(mTempMonth).append("/").append(mYear)
                        .append("")).length());
            } else if (mWhichDatePicker == 4) {
                endsOn.setText(new StringBuilder().append(mTempDay).append("/")
                        .append(mTempMonth).append("/").append(mYear).append(""));
                endsOn.setSelection((new StringBuilder().append(mTempDay)
                        .append("/").append(mTempMonth).append("/").append(mYear)
                        .append("")).length());

                Calendar cal = Calendar.getInstance();
                cal.set(mYear, mMonth, mDay);
                endDate = cal.getTime();
            }
        }

    }

リストビューのウルカスタムテキストビューの日付。あなたに役立つことを願っています。ありがとう

于 2012-05-18T07:08:07.847 に答える