📌  相关文章
📜  Android中的ActionBar示例(1)

📅  最后修改于: 2023-12-03 14:59:17.077000             🧑  作者: Mango

Android中的ActionBar示例

ActionBar是Android中的一种标准化的用户界面元素,它提供了应用程序的标题、导航和操作菜单。在本示例中,我们将介绍如何使用ActionBar。

准备工作

在使用ActionBar之前,我们需要在项目的build.gradle文件中添加以下代码来导入依赖库:

implementation 'com.android.support:appcompat-v7:28.0.0'
创建ActionBar

要创建一个ActionBar,我们需要在AndroidManifest.xml文件中的<application>标签下添加以下代码:

<application
    ...
    android:theme="@style/Theme.AppCompat.Light.DarkActionBar">
    ...
</application>

然后,在我们需要添加ActionBar的Activity中,我们需要在onCreate()方法中添加以下代码:

getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setTitle("标题");

这里通过getSupportActionBar()方法得到ActionBar实例,并调用setDisplayHomeAsUpEnabled()方法来显示ActionBar的返回箭头和setTitle()方法设置ActionBar的标题。

添加Action

添加Action即为向ActionBar中添加操作菜单,我们可以通过在Activity中重写onCreateOptionsMenu()方法来实现。例如:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.action_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    int id = item.getItemId();

    if (id == R.id.action_search) {
        // 处理搜索Action
        return true;
    } else if (id == R.id.action_settings) {
        // 处理设置Action
        return true;
    }

    return super.onOptionsItemSelected(item);
}

在上述代码中,我们通过MenuInflater类的inflate()方法加载了一个XML布局文件action_menu.xml,其中包含两个Action:搜索和设置。在onOptionsItemSelected()方法中,我们根据Action的ID进行相应的操作处理。

参考资料