一:静态加载流程图: 静态加载一定不要忘了 在fragment标签里面 一定要有Id或者Tag属性
代码实现:1.自定义一个Fragment类
public class MyFragment extends Fragment { private TextView textView; @Nullable @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view=inflater.inflate(R.layout.fragment, container, false); textView= (TextView) view.findViewById(R.id.Textview1); 需要前面加一个View. textView.setText("这是在Fragment里面改的"); return view; } }2.在Main2Activity中引用Fragment
<fragment android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/fragment" android:name="com.aa.zhao.fragmentdemo.MyFragment" />然后就可以在onCreate里面修改布局样式
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main2); textView= (TextView) findViewById(R.id.Textview1); btn1= (Button) findViewById(R.id.btnYi); btn1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { textView.setText("这是在Main2里面改的"); } });
二:动态加载
MyFragment3 myFragment3=new MyFragment3(); 先new一个Fragment实例出来 FragmentManager fragmentManager =getFragmentManager();然后获取它的管理者信息 FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 然后开启事务 fragmentTransaction.add(R.id.frag,myFragment3); 第一个参数是 指定布局文件的id 第二个是Fragment在事务里面可以 增加 删除 替换 都可以
fragmentTransaction.addToBackStack(null); 这个是 按下手机上 物理返回键 可以返回前一个状态。fragmentTransaction.commit(); 最后 不要忘了 提交