zoukankan      html  css  js  c++  java
  • Android 给Button加个监听

    1、日期设置控件:DatePickerDialog

    2、时间设置控件:TimePickerDialog

     

    实例代码

    1、页面添加两个Button,单击分别显示日期设置控件和时间设置控件,还是有TextView控件,用于显示设置后的系统时间


     

    1. [代码]main.xml 

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"
        Android:orientation="vertical"
        Android:layout_width="fill_parent"
        Android:layout_height="fill_parent"
        >
    <TextView  Android:id="@+id/dateAndTime"
        Android:layout_width="fill_parent"
        Android:layout_height="wrap_content"
        Android:text="@string/hello"
        />
    <Button    Android:id="@+id/setDate"
            Android:layout_width="fill_parent"
            Android:layout_height="wrap_content"
            Android:text="Set the Date"></Button>
    <Button    Android:id="@+id/setTime"
            Android:layout_width="fill_parent"
            Android:layout_height="wrap_content"
            Android:text="Set the Time"></Button>
    </LinearLayout>

    2. [代码]ChronoDemo.java  

    package yyl.Android;
    
    import java.text.DateFormat;
    import java.util.Calendar;
    import java.util.Locale;
    
    import Android.app.Activity;
    import Android.app.DatePickerDialog;
    import Android.app.TimePickerDialog;
    import Android.os.Bundle;
    import Android.view.View;
    import Android.widget.Button;
    import Android.widget.DatePicker;
    import Android.widget.TextView;
    import Android.widget.TimePicker;
    
    public class ChronoDemo extends Activity {
       //获取日期格式器对象
        DateFormat fmtDateAndTime = DateFormat.getDateTimeInstance();
        //定义一个TextView控件对象
        TextView dateAndTimeLabel = null;
        //获取一个日历对象
        Calendar dateAndTime = Calendar.getInstance(Locale.CHINA);
       
       
        //当点击DatePickerDialog控件的设置按钮时,调用该方法
        DatePickerDialog.OnDateSetListener d = new DatePickerDialog.OnDateSetListener()
        {
            @Override
            public void onDateSet(DatePicker view, int year, int monthOfYear,
                    int dayOfMonth) {
                //修改日历控件的年,月,日
                //这里的year,monthOfYear,dayOfMonth的值与DatePickerDialog控件设置的最新值一致
                dateAndTime.set(Calendar.YEAR, year);
                dateAndTime.set(Calendar.MONTH, monthOfYear);
                dateAndTime.set(Calendar.DAY_OF_MONTH, dayOfMonth);   
                //将页面TextView的显示更新为最新时间
                updateLabel();           
            }       
        };
       
    
    
        TimePickerDialog.OnTimeSetListener t = new TimePickerDialog.OnTimeSetListener() {
           
            //同DatePickerDialog控件
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                dateAndTime.set(Calendar.HOUR_OF_DAY, hourOfDay);
                dateAndTime.set(Calendar.MINUTE, minute);
                updateLabel();
               
            }
        };
       
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
           
            //得到页面设定日期的按钮控件对象
            Button dateBtn = (Button)findViewById(R.id.setDate);
            //设置按钮的点击事件监听器
            dateBtn.setOnClickListener(new View.OnClickListener() {
               
                @Override
                public void onClick(View v) {
                    //生成一个DatePickerDialog对象,并显示。显示的DatePickerDialog控件可以选择年月日,并设置
                    new DatePickerDialog(ChronoDemo.this,
                            d,
                            dateAndTime.get(Calendar.YEAR),
                            dateAndTime.get(Calendar.MONTH),
                            dateAndTime.get(Calendar.DAY_OF_MONTH)).show();               
                }
            });
           
            Button timeBtn = (Button)findViewById(R.id.setTime);
            timeBtn.setOnClickListener(new View.OnClickListener() {
               
                //同上原理
                @Override
                public void onClick(View v) {
                    new TimePickerDialog(ChronoDemo.this,
                            t,
                            dateAndTime.get(Calendar.HOUR_OF_DAY),
                            dateAndTime.get(Calendar.MINUTE),
                            true).show();
                   
                }
            });
           
            dateAndTimeLabel=(TextView)findViewById(R.id.dateAndTime);
           
            updateLabel();
        }
       
        //更新页面TextView的方法
        private void updateLabel() {
            dateAndTimeLabel.setText(fmtDateAndTime
            .format(dateAndTime.getTime()));
            }
    }

    来自: 源码天堂
  • 相关阅读:
    win10 UWP button
    内网分享资源
    内网分享资源
    CF724F Uniformly Branched Trees
    win10 UWP FlipView
    win10 UWP FlipView
    win10 UWP FlipView
    搭建阿里云 centos mysql tomcat jdk
    搭建阿里云 centos mysql tomcat jdk
    win10 UWP 申请微软开发者
  • 原文地址:https://www.cnblogs.com/riskyer/p/3331387.html
Copyright © 2011-2022 走看看