代码之家  ›  专栏  ›  技术社区  ›  92AlanC

向后兼容的setOnDateSetListener

  •  2
  • 92AlanC  · 技术社区  · 7 年前

    我想用一个 DatePickerDialog 在一个 Fragment OnDateSetListener 但是当我尝试使用 setOnDateSetListener 方法得到编译时警告,如 调用需要API级别24(当前最小值为16) . 有没有其他方式可以接收此回调? 我的应用程序的最小SDK是16,最大是26。

    这是我的代码:

    DatePickerDialog.Builder builder = new DatePickerDialog.Builder(getContext());
    builder.setTitle(R.string.pick_date);
    builder.setNegativeButton(R.string.cancel, null);
    builder.setPositiveButton(R.string.ok, this);
    DatePickerDialog dialogue = (DatePickerDialog) builder.create();
    dialogue.setOnDateSetListener(this); // This is where I get the error
    dialogue.show();
    
    2 回复  |  直到 7 年前
        1
  •  3
  •   Octaviano Putra    7 年前

    将此构造函数用于DatePickerDialog

    DatePickerDialog(@NonNull Context context, @Nullable OnDateSetListener listener, int year, int month, int dayOfMonth)
    
        2
  •  1
  •   Saurabh Thorat    7 年前

    DatePickerDialog(Context context) 构造函数是在API级别24中添加的。

    this constructor API级别1中添加了:

    DatePickerDialog (Context context, 
                    DatePickerDialog.OnDateSetListener listener, 
                    int year, 
                    int month, 
                    int dayOfMonth)