((MainActivity) getActivity()).goShopping();//goShopping为activity里面的方法
2、官方推荐写法,接口回调(推荐,解耦最好)private OnListener mListener;
@Override
public void onAttach(Context context) {
super.onAttach(context);
if (context instanceof OnListener) {
mListener = (OnListener) context;
}
else {
throw new RuntimeException(context.toString()
+ " must implement OnListener");
}
}
@Override
public void onDetach() {
super.onDetach();
mListener = null;
}
public interface OnListener {
void getResult(String data);
}
然后在Activity实现上面的接口:
public class MainActivity extends AppCompatActivity implements OnListener{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
@Override
public void getResult(String data) {
}
}
然后在fragment里面需要调用的地方使用:
mListener.getResult("测试");
3、使用handler在activity中传一个实例handler到fragment里面,然后直接在fragment里面调用即可
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)