首先需要在 fragment 的onAttach 方法中获取activity
override fun onAttach(context: Context) { super.onAttach(context) if (context is AnchorSeatLiveActivity ){ var anchorSeatLiveActivity=context as AnchorSeatLiveActivity; anchorSeatLiveActivity.setMiediaStateChangeListener(this) } }
之后在activity中设置listener
private lateinit var onStateChangeListener: OnStateChangeListener fun setMiediaStateChangeListener(changeListener: OnStateChangeListener) { onStateChangeListener = changeListener } interface OnStateChangeListener { fun onStateChanged(data: ArrayList<SeatListBean>) }
最后在fragment中实现接口 调用
override fun onStateChanged(data: ArrayList<SeatListBean>) { audienceListAdapter?.setData(data) audienceListAdapter?.notifyDataSetChanged() }