深入分析:Fragment与Activity交互的几种方式(3,使用接口)

深入分析:Fragment与Activity交互的几种方式(三,使用接口)

第一步:我们需要在Fragment中定一个接口,并确保我们的容器Activity实现了此接口:


public interface onTestListener {
public void onTest(String str);
}


@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
// 这个方法是用来确认当前的Activity容器是否已经继承了该接口,如果没有将抛出异常
try {
mCallback = (onTestListener) activity;
} catch (ClassCastException e) {
throw new ClassCastException(activity.toString()
+ " must implement OnHeadlineSelectedListener");
}
}

第二步:在我们的容器Activity中实现此接口,并实现接口中的方法。

public class MainActivity extends Activity implements onTestListener {

......

@Override
public void onTest(String str) {
text.setText(str);
}

第三步:我们在fragment执行某些特定的操作时,调用接口中声明的方法。

@Override
public void onClick(View v) {
mCallback.onTest(edit.getText().toString());
}


完整代码链接地址:http://download.csdn.net/detail/huangyabin001/7560291点击打开链接