学习笔记
一、属性设置
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<Button
android:id="@+id/button"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="跳转到Fragment"/>
二、代码实现
// MainActivity.java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置Activity的布局文件
setContentView(R.layout.activity_main);
// 获取布局中的Button视图
Button button = findViewById(R.id.button);
// 设置Button的点击事件监听器
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// 当按钮被点击时,开始一个Fragment事务
getSupportFragmentManager().beginTransaction()
// 替换当前Fragment为ExampleFragment
.replace(R.id.fragment_container, new ExampleFragment())
// 将这个事务添加到返回栈,以便用户可以使用返回键返回到之前的Fragment
.addToBackStack(null)
// 提交事务
.commit();
}
});
// 检查savedInstanceState,避免在Activity重新创建时重复加载Fragment
if (savedInstanceState == null) {
// 初次加载时,替换容器中的Fragment为InitialFragment
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment_container, new InitialFragment())
.commit();
}
}
}