Android ActionBarSherlock 顶部栏

2023-11-22

enter image description here

我想要一个像 foursquare 这样的操作栏。我想要的是诸如朋友、探索和我。另外,在选项卡上方,我想要一个自定义布局,其中包括一些按钮,例如foursquare 徽标、刷新和签入在四方。我创建了选项卡,但无法更改 ActionBarSherlock 中选项卡上方的布局。我怎么解决这个问题?


要实现 Foursquare 外观,您不需要考虑在选项卡上方创建布局。使用 Actionbar Sherlock 时,您只需要担心:

  1. 为顶部栏制作背景
  2. 为顶部栏制作徽标
  3. 在 menu.xml 文件中添加项目,ActionbarSherlock 将使用该文件用按钮填充顶部部分(只要使用 Actionbar Sherlock 样式的样式附加到该活动)。

因此,对于 1. 和 2. 来说,这都是关于使用 styles.xml 文件(应驻留在 res 文件夹中的 value 文件夹中),如下所示:

<style name="Theme.Example" parent="Theme.Sherlock">
    <item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
    <item name="absForceOverflow">true</item>       
</style>

<style name="Widget.Styled.ActionBar" parent="Widget.Sherlock.ActionBar.Solid">
    <item name="background">@drawable/actionbar_background</item> <-- the background for top bar
    <item name="icon">@drawable/actionbar_logo</item> <-- the logo that goes top left in the top bar
    <item name="backgroundSplit">@drawable/bg_striped_split</item> <-- the image used between the menu items
</style>

对于 3.,您需要做的就是在 menu.xml 下创建菜单项(应驻留在 menu 文件夹中(如果不存在,请在 res 文件夹中创建一个)):

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">     

<item android:id="@+id/menu_prefs"
      android:icon="@drawable/settings_icon"
      android:title="Preferences"
      android:showAsAction="ifRoom" /> 
</menu>

要查看菜单项,您要做的最后一件事是在活动中使用这些功能:

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

public boolean onOptionsItemSelected (MenuItem item) {

    Intent intent;

    switch (item.getItemId())
    {   
    case R.id.menu_prefs:

        // Launch Preference Activity
        intent = new Intent(getBaseContext(), Preferences.class);           
        startActivity(intent);
        break;
    }

    return false;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android ActionBarSherlock 顶部栏 的相关文章

  • 使用匕首柄作为依赖注入来处理多个改造客户端?

    我想在我的 android 应用程序中使用两个不同的后端 具有不同的响应格式 我使用 hilt 作为依赖注入 并对网络调用进行改造 这非常适合工作 因为我已经添加了第二个服务器网络文件和应用程序模块 所以它给了我错误 该错误列在最后 我需要
  • 您的应用中的 Google Analytics SDK

    我按照这里的说明进行操作 https developers google com analytics devguides collection android v3 https developers google com analytics
  • 如何用Android做交互动画(翻译)

    我在 Android 中有一些 png 序列 我需要将它们的 x 和 y 位置从屏幕顶部到底部的翻译动画化 当动画发生时 我需要对象来接收单击事件 我知道这在 3 0 之前的 Android 版本中效果不太好 因为display对象的位置与
  • Kotlin Android Firebase 数据库哈希映射转换为类

    我正在尝试从 firebase 数据库获取数据 断点显示它正在获取数据 但看起来我没有正确地将其分配给我的班级 这会导致此异常 java lang ClassCastException 无法将 java util HashMap 转换为 班
  • 在 Android 中使用 awt

    我有一个绘制图表的 Java Swing 应用程序 它使用 Graphics2D 调用和 awt 对象 例如 Rectangle 等 在某些时候我可能想将其移植到 Android 上 我知道我无法在 Android 上使用 Graphics
  • 如何以编程方式判断蓝牙设备是否已连接?

    我了解如何获取已配对设备的列表 但如何判断它们是否已连接 这一定是可能的 因为我看到它们列在我手机的蓝牙设备列表中 并且它说明了它们的连接状态 将蓝牙权限添加到您的AndroidManifest中
  • 升级到 Proguard 4.8 后无法导出应用程序

    我刚刚将我的 Android SDK ADT 和 Proguard 升级到最新最好的版本 我的项目在调试模式下编译并运行良好 但是当我尝试导出它的签名版本 APK 时 我收到来自导出向导的错误Eclipse 控制台上没有任何错误日志消息 如
  • Android 中图像字节表示的每像素字节数

    我目前正在编写一个Android应用程序 需要在其中使用OCR 为了实现这一点 我将 Tesseract 与tesseract android tools 项目 http code google com p tesseract androi
  • 如何连接到Google Play服务并加载排行榜

    我想将我的游戏与 Google Play 服务连接 我已阅读有关 Android 开发人员的文档 并尝试遵循输入数字示例 但仍然无法加载排行榜 我有导入baseGameUtils 但我使用andengine 所以我没有使用来自谷歌的exte
  • 新安装的Eclipse和Android SDK。无法让模拟器工作。挂在时钟屏幕上

    我对开发是全新的 我已经安装了 Eclipse 和 Andoid SDK 但是 我无法让模拟器工作 我已经尝试过示例记事本代码和 Hello Android 教程代码 每次我尝试运行任一应用程序时 它都会挂在时钟屏幕上 屏幕上还显示正在充电
  • 使用 RoboSpice 有没有办法从异常中获取 HTTP 错误代码?

    我正在编写一个使用 RoboSpice 的应用程序 在请求侦听器 onRequestFailure SpiceException arg0 中 有没有办法确定该错误是由于发生 401 HTTP 错误而导致的 我有一个后端服务 当令牌过期时
  • Android Studio APK META-INF/BCKEY.DSA 中复制的重复文件

    我的代码构建得很好 但是当我尝试在调试中运行它时 出现以下错误 Error Execution failed for task app transformResourcesWithMergeJavaResForDebug com andro
  • 如何从画布中删除路径区域(Android)

    我需要裁剪角落ImageView 不要将它们弄圆 而是擦除每个角上的三角形 似乎唯一的方法就是覆盖onDraw方法并使用从画布上删除这些区域Path 问题是我没有纯色背景 所以我需要擦除这些区域 但不要用某种颜色填充它们 我为此使用以下代码
  • foo.setVisibility(View.GONE) 和parent.removeView(foo) 之间的区别

    如果 foo 是一个视图 那么有什么区别foo setVisibility View GONE and fooParent removeView foo 我对两个语句之前和之后视图的内存消耗特别感兴趣 可见性设置为 GONE 的视图是否会消
  • 使用 Box2d(适用于 Android)进行碰撞检测?

    有人可以解释一下使用 box2d for android 进行碰撞检测的工作原理吗 我无法理解 BBContactListener 以什么方式工作 BBContactListener listener new BBContactListen
  • 如何获取Android中的所有主屏幕?

    我是安卓开发新手 我知道每个主屏幕都是启动器中的一个工作区 我想获取屏幕上所有应用程序图标的所有位置信息 那么有没有办法获取这些屏幕对象及其图标信息的列表 ADD 我更期待的是应用程序图标和屏幕之间的关系 例如 我想要某个应用程序图标的位置
  • JavaScript 点击事件在 Android 4.0.4 默认浏览器上的 Samsung Galaxy SIII 上不起作用

    我在 Android 4 0 4 上使用 Samsung Galaxy SIII 的默认浏览器时遇到了最奇怪的问题 对于以下页面 单击链接将不会触发 JavaScript 处理程序 从其中一个 div 的内容中删除单个 a 字母使它们再次工
  • FCM 主题是否适合更多用户?

    我对使用主题消息有点困惑 我的场景是根据通知触发一些作业 请帮助我更多地了解这一点 如果我们正在处理大量用户 则可以使用 FCM 主题向用户发送通知 我们可以只使用数据消息和主题消息吗 使用主题发送的消息是否保证送达 我在 FCM 文档中看
  • AndroidAnnotations 和 Dagger

    我正在尝试使用 Dagger 注入 Android 带注释的 Activity java lang IllegalArgumentException No inject registered for members com app serv
  • 如何从另一个活动更新 Recyclerview 数据

    我有两个活动 MainActivity 和 Addlogactivity 我正在更新 Addlogactivity 中的数据 该数据应显示在 mainactivity recyclerview 中 数据未在数据库中更新 MianActivi

随机推荐

  • PSQLException:此 ResultSet 已关闭

    我一生中第一次出现这种奇怪的错误 我不知道这意味着什么 我有一个类 它从 postgresql 数据库上的表中检索信息 执行一些操作并返回带有解析元素的数组列表 ResultSet rs ProduttoreDCS getProduttor
  • 选择中的 LINQ 选择

    我正在尝试查询包含以下内容的集合Employee信息 当我查询该集合时 我想返回对象的枚举 其中每个对象都有两个字段 Name 经理姓名 请注意 每个经理也是员工 现在 这是我遇到的问题 当我做一个select在一个select 的值Man
  • f.seek() 和 f.tell() 读取文本文件的每一行

    我想打开一个文件并使用读取每一行f seek and f tell 测试 txt abc def ghi jkl 我的代码是 f open test txt r last pos f tell get to know the current
  • Outlook 回复或回复全部电子邮件

    Set objOutlook CreateObject Outlook Application Set objMail objOutlook CreateItem 0 objMail To email protected objMail c
  • 如何使参数推导适用于使用基类构造函数的派生类?

    当派生类使用基类构造函数时 推论似乎总是fail 然而 当基类有很多构造函数时 重新定义所有构造函数是非常笨拙的 当基类快速演变为新的构造函数时 这也是一个痛苦 老问题是两年多前提出的 所以我想知道 在 2020 年 c 17 和 c 2a
  • qDebug Qt 控制台应用程序输出到 Qt Creator 应用程序输出

    如何在 Qt 控制台应用程序中使用 qDebug 输出到 Qt Creator 应用程序输出 窗口 当前 qDebug 写入控制台窗口 这会干扰非调试输出 默认情况下 在 Qt GUI 应用程序中使用 qDebug 会输出到应用程序输出窗口
  • 在 ARKit 中获取设备绕世界原点 y 轴的旋转

    当我在 ARKit 中绕 y 轴旋转设备时 我试图计算设备的旋转 为了澄清起见 ARKit 中的 y 轴是垂直于地面指向上方的轴 我使用 eulerangles 来获得相机的旋转 如下所示 var alpha sceneView point
  • Entity Framework 4.1 Codefirst:删除一对多子项时出现“给定多重约束”错误

    我有以下课程实体框架4 1 这些类已被修剪以保持代码的可读性 public class MetaInformation public int Id get set public virtual MetaInformationObject R
  • 存储/检索数据结构

    我已经实施了一个后缀树在Python中进行全文搜索 而且效果非常好 但有一个问题 索引文本可能非常大 因此我们无法在 RAM 中拥有整个结构 IMAGE 单词的后缀树BANANAS 在我的场景中 想象一棵大 100000 倍的树 因此 经过
  • 线性化深度

    在 OpenGL 中 您可以像这样线性化深度值 float linearize depth float d float zNear float zFar float z n 2 0 d 1 0 return 2 0 zNear zFar z
  • LdapConnection SearchRequest 抛出“超出大小限制”异常

    由于我们需要使用 LDAPS 连接到 LDAP 服务器 因此我们必须使用 LdapConnection 而不是 DirectoryEntry 这是源代码 SearchResponse response using LdapConnectio
  • PHP递归函数删除所有子节点导致stackoverflow

    我的MySQL是这样的 表的名称是category id content parent where is 类别的 id 内容 一些我们不关心的文本 父级 父级的 id 类别 这就是我现在正在尝试的 function remrecurs id
  • 是否可以禁用plotly.py烛台图表上的缩放/平移窗口?

    我正在使用plotly py 创建烛台图 我想要进行水平分割 并将烛台数据放在顶部分割中 将一些数据曲线放在底部分割中 我不需要平移和缩放 并且带有缩放 平移控件的烛台图的下部部分妨碍了我 要禁用缩放和平移 您需要设置 layout xax
  • 如何以编程方式关闭/取消/关闭系统对话框 (Android)

    我有一个可以进行 USSD 调用的应用程序 但在所有 USSD 调用之后 我收到了一个向用户显示结果的对话框 我知道可以关闭此对话框 因为 USSD Checker 应用程序执行此操作 它们从 USSD 获取响应而不显示用户对话框 In t
  • 如何全局设置 System.Text.Json.JsonSerializer 的默认选项?

    而不是这个 JsonSerializerOptions options new JsonSerializerOptions PropertyNamingPolicy JsonNamingPolicy CamelCase etc var so
  • Android Studio 项目已经注册

    我在使用 Android Studio 时遇到了一个大问题 我有一个项目依赖于其他两个项目 如库 我跟着导游将项目导入 Android Studio 时出现与 ActionBarSherlock 有关的问题用于导入外部模块 我打开 项目结构
  • Magento 覆盖控制器

    我想做以上的事情 我过去重写过许多文件 块 模型 助手 但这个让我困惑 谁能看到我在这里做错了什么 我已经编辑了这段代码 现在包含一些建议 这是我的文件夹结构 2 个控制器位置作为测试 Idigital Idgeneral etc conf
  • 使用 Rails 3 中的表单按钮覆盖 respond_to 格式

    我有一组使用 Rails 调用 respond to 以各种格式显示的报告 这样如果 URL 以 CSV 或 JSON 结尾 则报告将以该格式生成 我请求制作一个下载按钮 以便更轻松地获取报告 但由于报告具有日期范围等自定义功能 因此我需要
  • Firebase 时间戳至今的日期和时间

    我正在使用 firebase 作为我的聊天应用程序 在聊天对象中 我使用添加时间戳Firebase ServerValue TIMESTAMP method 我需要使用此时间戳在我的聊天应用程序中显示消息接收时间 如果是当前时间 我只需要显
  • Android ActionBarSherlock 顶部栏

    我想要一个像 foursquare 这样的操作栏 我想要的是诸如朋友 探索和我 另外 在选项卡上方 我想要一个自定义布局 其中包括一些按钮 例如foursquare 徽标 刷新和签入在四方 我创建了选项卡 但无法更改 ActionBarSh