安卓开发例3-6 进度及日期、时间对话框示例

设计三种对话框,分别是进度、日期和时间对话框

(一)设计界面的布局文件activity_main.xml。

<?xml version="1.0" encoding="utf-8"?>


<LinearLayout android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="打开进度对话框"
        android:textSize="39sp"
        />
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="打开日期对话框"
        android:textSize="39sp"
        />
    <Button
        android:id="@+id/button3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="打开时间对话框"
        android:textSize="39sp"
        />
</LinearLayout>

(二)设计设计控制文件MainActivity.java。

package com.example.test36;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.ProgressDialog;
import android.app.TimePickerDialog;
import android.app.TimePickerDialog.OnTimeSetListener;
import android.app.DatePickerDialog.OnDateSetListener;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TimePicker;

public class MainActivity extends Activity {
    Button btn1,btn2,btn3;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        btn1=(Button)findViewById(R.id.button1);
        btn2=(Button)findViewById(R.id.button2);
        btn3=(Button)findViewById(R.id.button3);
        btn1.setOnClickListener(new mClick());
        btn2.setOnClickListener(new mClick());
        btn3.setOnClickListener(new mClick());
    }
    class mClick implements OnClickListener
    {
     int m_year = 2012;
     int m_month = 1;
     int m_day = 1;
     int m_hour =12,
        m_minute = 1;
     @Override
        public void  onClick(View v)
     {
         if(v == btn1)
         {
             ProgressDialog d=new ProgressDialog(MainActivity.this);
             d.setTitle("进度对话框");
             d.setIndeterminate(true);
             d.setMessage("程序正在Loading...");
             d.setCancelable(true);
             d.setMax(10);
             d.show();
         }
         else if(v == btn2)
         {
             //设置日期监听器
             OnDateSetListener dateSetListener = new OnDateSetListener() {
                 @Override
                 public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth)
                 {
                     m_year = year;
                     m_month =  monthOfYear;
                     m_day = dayOfMonth;
                 }
             };
             //创建日期对话框对象
             DatePickerDialog date = new DatePickerDialog(MainActivity.this,
                     dateSetListener, m_year,m_month,m_day);
             date.setTitle("日期对话框");
             date.show();
         }
         else if(v == btn3)
         {
             //设置时间监听器
             OnTimeSetListener timeSetListener = new OnTimeSetListener() {
                 @Override
                 public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                     m_hour = hourOfDay;
                     m_minute = minute;
                 }
             };
             TimePickerDialog d = new TimePickerDialog(MainActivity.this,
                     timeSetListener, m_hour,m_minute,true);
             d.setTitle("时间对话框");
             d.show();
         }
     }
    }
}

 

以下是演示图

‘’

进度对话框:

日期对话框:

时间对话框:

心得与体会:

学习的重点主要侧重在日期和时间选择对话框。日期选择对话框DatePickerDialog和时间选择对话框TimePickDialog都继承于AlertDialog。方法有以下:

updateDate(int year,int monthOfYear,int dayOfMonth)//设置DatePickerDialog对象的当前日期

onDateChanged(DatePicker view,int year,int month,int day)//修改DatePickerDialog对象的日期

updateTime(int hourOfDay,int minutOfHour)//设置TimePickDialog对象的时间

onTimeChanged(TimePicker view,int hourOfDay,int minute)//修改TimePickDialog对象的时间

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值