- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我已经更新了项目中的 holoeverywhere 版本,所以我不再使用 ActionBarSherlock (ABS),而是使用 ActionBarCompact (ABC)
我遇到的问题是在使用 MenuItemCompat.getActionView(aMenuItem) 时我总是得到一个空值。
我的确切代码是:
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.dashboard_menu, menu);
_itemNotifications = menu.findItem(R.id.notifications);
_containerViewItemNotifications = (LinearLayout) MenuItemCompat.getActionView(_itemNotifications);
_viewItemNotifications = (TextView) _containerViewItemNotifications.findViewById(R.id.ActionViewDashboard);
_containerViewItemNotifications.setOnClickListener(new OnClickListener() {
@SuppressLint("NewApi")
public void onClick(View v) {
if (android.os.Build.VERSION.SDK_INT >= 16) {
_viewItemNotifications.setBackground(getResources().getDrawable(R.drawable.qnotificacion_disbled));
} else {
_viewItemNotifications.setBackgroundDrawable(getResources().getDrawable(R.drawable.qnotificacion_disbled));
}
_viewItemNotifications.setText(R.string.empty);
onOptionsItemSelected(_itemNotifications);
}
});
_itemAnotateResult = menu.findItem(R.id.menu_anotate_result);
return super.onCreateOptionsMenu(menu);
}
其中 MenuItemCompat.getActionView(_itemNotifications) 始终为空值
我的 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/notifications"
android:actionLayout="@layout/actionview_dashboard"
android:title="@string/customize"
app:showAsAction="ifRoom"/>
<item
android:id="@+id/menu_anotate_result"
android:title="@string/anotate"
android:visible="false"
app:showAsAction="ifRoom|withText"/>
</menu>
我该如何克服这个问题?我尝试采用与 Android 文档中针对 SearchViewItem 的解释类似的方法,但完全没有成功
提前致谢。
最佳答案
我认为问题在于 ABC 不支持自定义 ActionLayouts。我找到了一个人faced a similar problem which he resolved successfully .在添加SearchView的时候,注意他用的是app:actionViewClass。您可以尝试使用 app:actionLayout 看看它是否适合您吗?
关于android - 无法使用 Holoeverywhere 中的 ActionBarCompat 将 ActionView 添加到 Actionbar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19278774/
我正在尝试使用 HoloEverywhere,但不知道如何安装它。我已关注 this 上列出的内容GitHub 页面。我只是收到很多错误。有谁知道如何让它与 android 2.3.3 API 10
我有一个有点大的 Android 项目,现在我开始担心向后兼容性。 因此,我决定在我的项目中使用 HoloEverywhere,以便我的应用程序在旧版本的 Android 上看起来很好。 从表面上看,
我在我的应用程序中使用了 HoloEverywhere 库,为了应用主题中的字体,我向 TextView 样式添加了一个新的自定义属性 ttfName,并在 org.holoeverywhere.wi
我正在尝试将 HoloEveryWhere 与 ABS 结合使用。我从一个答案中遵循了这个小教程:Error importing HoloEverywhere 最后一步是将其添加到我的 list 中:
我正在尝试导入 HoloEverywhere我已经将它下载到我的 eclipse 中并尝试将其作为库导入 properties -> on the Android tab -> add library
我一直在努力让 ListPreference 与 HoloEverywhere 一起工作。我在 XML 文件中定义了我的设置。我为属性使用了 holo 命名空间。与首选项相关的所有内容都使用 org.
我是使用其他库的新手,但我正在处理的当前项目正在使用这个 HoloEverywhere 库。不幸的是,那个图书馆没有给我任何文件,所以我不得不自己下载。我克隆了 git 存储库,但是当我将 HoloE
首先,我是 Android 新手。我正在做一个应用程序,我正在实现一个名为 HoloEverywhere 的库.这个库在 themes.xml 中使用库 ActionBar Sherlock。我已将其
我正在尝试在我的应用程序中使用 HoloEverywhere 库的 dev 分支。我知道这仍在开发中,但演示似乎运行良好,所以我试一试。 我将 android:theme="@style/Holo.T
通过gradle编译测试项目时,我遇到了三天(晚上)的问题 我的错误是 error: package org.holoeverywhere.app does not exist import org.
我定义我的微调器如下: import org.holoeverywhere.widget.Spinner; private static org.holoeverywhere.widget.Spinn
我正在尝试使用 HoloEveryWhere在 ADT(Eclipse) 上。我做错了什么? 我正在下载that 文件 > 导入 > 将现有代码导入工作区 我正在下载that 再次执行 2 步(库已禁
我在 Release模式下测试我的应用程序时遇到以下错误,使用 proguard 混淆: 08-09 21:44:06.140: E/AndroidRuntime(4465): FATAL EXCEP
更新 ADT 后我遇到了很多问题并删除了我的工作区并用 git 重新克隆了所有内容并获得了更新的 HoloEverywhere 修订版(不知道以前的修订版,但我想使用最新的)。 我必须在 BuildP
经过数小时与 android-studio 和 HoloEverywhere+ActionBarSherlock 的斗争,我终于成功地设置了一切; holoeverywhere 类可以在 androi
我关注了this紧密并成功地将 ActionBarSherlock lib 添加到我的项目和 HoloEverywhere。然而,当我构建 HoloEverywhere 库时,我遇到了这些错误: 在a
我有一个简单的问题。对于我的 android 应用程序,我计划使用 ActionBarSherlock 和 HoloEverywhere 库。除了一件事之外,一切都很好:将溢出菜单强制到旧设备上。如果
我正在使用 HoloEverywhere 提供的 SeekBar 类。我有以下进口商品: import org.holoeverywhere.widget.SeekBar; import org.ho
当我尝试通过 Eclipse 将 HoloEverywhere 的库文件夹导入我的工作区时,出现以下错误: Build path contains duplicate entry: 'src' in
我想在我的项目中一起使用这些库,但是在我将这些库添加到我的项目中后,出现了一些错误。 1) 我将 ActionBarSherlock 和 HoloEverywhere 作为库。 2) 我在 HoloE
我是一名优秀的程序员,十分优秀!