Fragment的继承关系
Fragment的继承关系.png
Fragment的实现方式
创建一个类,继承Fragment
重写父类的方法onCreateView()
在onCreateView()方法中,为Fragment创建UI界面
Java代码
MyFragment类
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class MyFragment extends Fragment {
@Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
return getLayoutInflater().inflate(R.layout.fragment_layout, null);
}
}
MainActivity类
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
public class MainActivity extends AppCompatActivity {
private MyFragment myFragment;
private MyFragment1 myFragment1;
private FragmentManager fragmentManager;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//创建fragment对象
myFragment = new MyFragment();
myFragment1 = new MyFragment1();
//获得fragment的管理类对象
fragmentManager = getSupportFragmentManager();
//获得事务管理者
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
//添加fragment
fragmentTransaction.add(R.id.zhen, myFragment, "叽里咕噜");
fragmentTransaction.add(R.id.zhen, myFragment1, "123");
fragmentTransaction.hide(myFragment1);
// //移除fragment
// fragmentTransaction.remove(myFragment);
// //显示fragment
// fragmentTransaction.show(myFragment);
// //隐藏fragment
// fragmentTransaction.hide(myFragment);
// //替换
// fragmentTransaction.replace(R.id.zhen,myFragment);
//提交事务
fragmentTransaction.commit();
}
public void show(View view) {
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.show(myFragment1);
fragmentTransaction.commit();
}
public void remove(View view) {
FragmentTransaction fragmentTransaction = fragmentMana