package cn.zengfansheng.fragmentCommunication;
import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.Button;
public class Fragment1 extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment1, null);
// 1、通过view找到button
Button bt1 = (Button) view.findViewById(R.id.click1);
Button bt2 = (Button) view.findViewById(R.id.click2);
// 2、设置监听事件
bt1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
System.out.println("按钮1,被点击了。。。");
// 以下代码不能放外面,否则会报空指针访问异常。
// 3、要想改变fragment2中的内容,通过fragment附属的Activity作为中间人,来进行操作
Activity activity = getActivity();
// 4、通过附属的Activity得到FragmentManager,通过id找到fragment2,然后对其进行操作
FragmentManager fragmentManager = activity.getFragmentManager();
Fragment2 fragment2 = (Fragment2) fragmentManager.findFragmentById(R.id.fragment2);
fragment2.setText("按钮1点击了。。。");
}
});
bt2.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
System.out.println("按钮2,被点击了。。。");
// 3、要想改变fragment2中的内容,通过fragment附属的Activity作为中间人,来进行操作
Activity activity = getActivity();
// 4、通过附属的Activity得到FragmentManager,通过id找到fragment2,然后对其进行操作
FragmentManager fragmentManager = activity.getFragmentManager();
Fragment2 fragment2 = (Fragment2) fragmentManager.findFragmentById(R.id.fragment2);
fragment2.setText("按钮2点击了。。。");
}
});
return view;
}
}