首页 > 解决方案 > 是否有一种简单的方法可以将按钮添加到子活动的操作栏?

问题描述

我正在尝试将 android studio 应用程序中的操作栏按钮添加到子活动中,但我只设法将其添加到主活动中。有人知道我该怎么做吗?

我希望“确定”按钮位于我用橙色绘制的位置。

带有操作栏的主要活动。 带有操作栏的主要活动

带有操作栏的子活动 带有操作栏的子活动

标签: javaandroidxml

解决方案


您应该为您的活动创建一个菜单:

里面res -> menu select new ->菜单资源文件 新建菜单资源文件

在您的新菜单 xml 文件中写入以下内容:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto">
    <item
        android:id="@+id/menu_action_ok"
        android:title="Ok"
        app:showAsAction="ifRoom" />
</menu>

基本上,您正在创建一个带有名为“Ok”的选项的菜单,但如果需要,您可以有更多选项。如果需要,您还可以自定义此选项的视图:

app:actionLayout="@layout/filter_ka"

在您的父活动中:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu.
    getMenuInflater().inflate(R.menu.menu_test, menu);
    return true;
}

菜单。menu_test是菜单文件的名称。

最后要接收您的菜单选项的点击,您应该覆盖以下功能:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();


    if (id == R.id.menu_action_ok) {
        //Your code
        return true;
    }
    return super.onOptionsItemSelected(item);
}

现在你应该有一个这样的菜单:

在此处输入图像描述


推荐阅读