Android学习笔记(十二)

Android权威编程指南第十二章习题解答

更多对话框

其实这个题的写法和之前创建DatePicker是一样的,只不过换成了TimePicker。

首先我们创建对话框的布局TimePicker

创建TimePickerFragment,内容和DatePickerFragment近乎完全一样,不同之处在于TimePicker设置时间上有所区别(此处不详细写了,关于使用这两种对话框会用就好,需要使用时回来看代码)

在CrimeFragment的onActivityResult中,添加DateTime的获取

实现响应式DialogFragment

这道题是前面Fragment和Activity间传值的实现,之前我们讲过用Activity托管Fragment和使用intent在父activity(或父fragment)与子activity间传值,使用fragment argument在 父activity与子fragment间传值。

由于把DiaLog变成一个页面了,首先去更改布局文件,使用constraintlayout布局会很方便。

在设定好Button的id后,我们先创建托管的Activity。

在页里创建onCreateView,创建布局。

实现效果:

其实可以看出来,无论是Activity和Fragment还是Fragment之间传递消息,都是子Fragment去调用父Activity或者父Fragment的相应方法。

  • Activity与Fragment 调用getAvtivity().setResult()
  • Fragment间 调用
getTargetFragment().onActivityResult(getTargetRequestCode(), resultCode, intent);获取传递值

发表评论