从activity向fragment传递就比较方便了,直接用:
fg.arguments = arguments
现在看看怎么从fragment向activity传递数据。
比如说,我们在一个ViewPage里面设置了若干个fragment,fragment里面有一个按钮,提交相关当前fg下标给viewPage所在的activity,删除当前的fg。
这里使用了handler,提交完信息,activity就立即更新UI
首先我们在fg中写一个接口
interface Callbacks{
fun onRemove(position:Int){
}
}
让我们的activity实现该接口:如果未实现,则抛出异常,这里在fg中有一个attach方法,是载入fg时候自动调用的。
override fun onAttach(context: Context?) {
if(context !is Callbacks){
throw IllegalStateException("接口未实现")
}
super.onAttach(context)
mcallbacks = context
}
然后我们在给fg的按钮添加监听器,调用该方法。
mcallbacks!!