• 接口传值实例DatePickerDialog


    1.第一步创建class,类名自己取,这里我使用DatePickerFragment1

    import android.app.DatePickerDialog;
    import android.app.Dialog;
    import android.app.DialogFragment;
    import android.os.Bundle;
    import android.widget.DatePicker;
    
    import java.util.Calendar;
    
    /**
     * Created by mac on 17/6/7.
     */
    public class DatePickerFragment1  extends DialogFragment implements DatePickerDialog.OnDateSetListener{
    
        public OnDateInputListener onDateInputListener;
    
    //创建接口类
        public interface OnDateInputListener {
           //接口函数
           public void getDate(int year, int month, int day);
        }
    
        public void setOnDateInputListener(OnDateInputListener onDateInputListener) {
            this.onDateInputListener = onDateInputListener;
        }
        @Override
        public Dialog onCreateDialog(Bundle savedInstanceState) {
            // Use the current date as the default date in the picker
            final Calendar c = Calendar.getInstance();
            int year = c.get(Calendar.YEAR);
            int month = c.get(Calendar.MONTH);
            int day = c.get(Calendar.DAY_OF_MONTH);
            // Create a new instance of DatePickerDialog and return it
            return new DatePickerDialog(getActivity(), this, year, month, day);
        }
    
        public void onDateSet(DatePicker view, int year, int month, int day) {
            // Do something with the date chosen by the user
            onDateInputListener.getDate(year, month + 1, day);
        }
    
    }
    
     

     2.第二步实现接口类

    implements DatePickerFragment1.OnDateInputListener
    

     3.第三步创建监听

     DatePickerFragment1 newFragment = new DatePickerFragment1();
            newFragment.show(getFragmentManager(), "datePicker");
    
    
            newFragment.setOnDateInputListener(this);
    

     4.第四部实现接口的方法

    public void getDate(int year, int month, int day){
            button.setText(year+"-"+month+"-"+day);
    
    
        }
    

    使用:

       DialogFragment dialogFragment1 = new DatePickerFragment();
                    dialogFragment1.show(getFragmentManager(), "datePicker");

    <item name="android:datePickerDialogTheme">@style/style_date_picker_dialog</item>
    </style>

    <style name="style_date_picker_dialog" parent="@android:style/Theme.DeviceDefault.Light">
    <item name="android:windowIsFloating">true</item>
    <!--<item name="android:windowBackground">@drawable/dialog_background</item>-->
    <item name="android:datePickerStyle">@style/style_datepicker</item>
    </style>

    <style name="style_datepicker" parent="android:Widget.Material.Light.DatePicker">
    <item name="android:datePickerMode">spinner</item>
    </style>

  • 相关阅读:
    Velocity Obstacle
    游戏AI技术 2
    游戏AI技术
    状态同步
    Realtime Rendering 1.1
    Steering Behaviors
    Realtime Rendering 6
    网络同步
    War3编辑器
    Realtime Rendering 5
  • 原文地址:https://www.cnblogs.com/hualuoshuijia/p/6957246.html
Copyright © 2020-2023  润新知