家母罹患肝癌,可在水滴筹页面查看详情
实现一个简单的效果:
创建 TestOneFragment
public class TestOneFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
// 使用一个简单的布局文件
return inflater.inflate(R.layout.fragment_test_one, container, false);
}
}
对应的 XML 布局文件:
测试显示,布局文件的layout_height为match_parent时可以正常显示
创建 TestTwoFragment
public class TestTwoFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_test_two, container, false);
}
}
对应的XML 布局文件:
在主界面添加 Fragment
然后,在你的活动中(比如 MainActivity
)添加这两个 Fragment
。我们可以通过 FragmentTransaction
将两个 Fragment
添加到同一个容器布局中。
public class MainActivity6 extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main6);
Log.d("FragmentTest", "Adding fragments...");
// 获取 FragmentManager 和 FragmentTransaction
FragmentManager fragmentManager = getSupportFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
// 创建两个 Fragment 实例
TestOneFragment testOneFragment = new TestOneFragment();
TestTwoFragment testTwoFragment = new TestTwoFragment();
// 将 Fragment 添加到容器中
fragmentTransaction.add(R.id.fragmentContainerOne, testOneFragment);
fragmentTransaction.add(R.id.fragmentContainerTwo, testTwoFragment);
// 提交事务
fragmentTransaction.commit();
Log.d("FragmentTest", "Fragments added.");
}
}
在 MainActivity
的布局文件中,定义两个 FrameLayout
容器,用来显示两个 Fragment
。