添加标题栏菜单,菜单名字为“添加“,当点击添加菜单时会显示由另一个有Fragment实现的书籍信息添加页来添加一本新书的信息。
时间: 2023-06-19 11:08:55 浏览: 80
好的,以下是实现的步骤:
1. 在你的Activity布局文件中添加一个Toolbar,设置它的标题为你想要的标题。
```
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
android:title="我的书架" />
```
2. 在你的Activity中找到这个Toolbar,并设置它为ActionBar。
```
Toolbar toolbar = findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
```
3. 在你的Menu布局文件中添加一个MenuItem,它的id需要设置为“add_book”。
```
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/add_book"
android:title="添加"
android:icon="@drawable/ic_add"
android:showAsAction="always" />
</menu>
```
4. 在你的Activity中重写onCreateOptionsMenu方法,将Menu布局文件inflate到Menu中。
```
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
```
5. 在你的Activity中重写onOptionsItemSelected方法,判断点击的MenuItem是否为“add_book”,如果是,则启动BookAddFragment。
```
@Override
public boolean onOptionsItemSelected(@NonNull MenuItem item) {
if (item.getItemId() == R.id.add_book) {
getSupportFragmentManager().beginTransaction()
.replace(R.id.fragment_container, new BookAddFragment())
.addToBackStack(null)
.commit();
return true;
}
return super.onOptionsItemSelected(item);
}
```
6. 在你的BookAddFragment中实现书籍信息添加的布局和逻辑。
这样,当你点击Toolbar上的“添加”菜单时,就会启动一个新的Fragment来添加一本新书的信息。
阅读全文