Tag: appcompat

使用AppCompat-v7的工具栏和上下文ActionBar

我正在使用在Lollipop和AppCompat-v7库中引入的新添加的工具栏。 我遵循这个指南设置工具栏我注意到,当你调用的东西,将带出上下文的ActionBar(如高亮复制/粘贴文本),它会推动工具栏在页面上。 你可以在页面底部的图片中看到我在说什么: 所以,本质上,我是这样设置的。 我有一个XML文件中定义的工具栏,我使用包含标签: <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="?attr/colorPrimary"/> 然后,我在我看来实例化它: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:id="@+id/root" tools:context=".MainActivity"> <include layout="@layout/toolbar" android:layout_width="match_parent" android:layout_height="wrap_content"/> <!– Rest of view –> </LinearLayout> 在代码中,我这样设置: // On Create method of activity: Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); 有谁知道如何使上下文ActionBar超越工具栏?

getActionBar()返回Null(AppCompat-v7 21)

在将AppCompat-v7更改为21.0.0和编译没有任何问题之后,我的应用崩溃了。 它给了我错误: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.app.ActionBar.setIcon(int)' on a null object reference 在这一行上: getActionBar().setIcon(R.drawable.ic_action_bar); 它适用于AppCompat-v7 20.0.0,但不适用于21.0.0。

在styles_base.xml文件错误 – android应用程序 – 找不到匹配给定名称的资源'android:Widget.Material.ActionButton'

好的,所以即时通讯在Android开发初学者,我刚刚创build了世界的应用程序。 但它给了我appcompat_v7库的styles_base.xml文件中的错误。 错误:检索项的父项时出错:找不到与给定名称“android:Widget.Material.ActionButton”匹配的资源。 styles_base.xml / appcompat_v7 / res / values-v21 AAPT问题 我如何照顾这个错误? 另外为什么在我不需要的时候使用appcompat_v7库? 我的意思是,如何在不使用appcompat_v7库的情况下创buildhello world应用程序? 这是提供上述错误的styles_base.xml文件。 <resources> <!– Like in themes_base.xml, the namespace "*.AppCompat.Base" is used to define base styles for the platform version. The "*.AppCompat" variants are for direct use or use as parent styles by the app. –> <eat-comment/> <style name="Base.Widget.AppCompat.ActionBar.TabView" parent="android:Widget.Material.ActionBar.TabView"> </style> […]

无法parsingcom.android.support:appcompat-v7:22和com.android.support:recyclerview-v7:21.1.2

我安装了所有额外和SDK API 21-22包括更改compileSdkVersion 22到21 buildToolsVersion '22 .0.1'到21.1.2,但错误。 API 22和渲染问题,我改变了<= 21它仍然。

工具栏导航图标从未设置

我正在尝试新的工具栏组件,导航图标有些麻烦。 我想实现一个自定义的图标进行后退导航: 在我的清单中,我设定了一位家长参加我的活动: <activity android:name=".CardsActivity" android:parentActivityName=".MainActivity"> <!– Parent activity meta-data to support API level 7+ –> <meta-data android:name="android.support.PARENT_ACTIVITY" android:value=".MainActivity" /> </activity> 我声明这样的工具栏: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" tools:context="com.example.lollitest.MainActivity" > <android.support.v7.widget.Toolbar android:id="@+id/my_awesome_toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?attr/actionBarSize" android:layout_marginBottom="10dp" android:background="?attr/colorPrimary" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/my_awesome_toolbar" android:text="@string/hello_world" /> </RelativeLayout> 然后在我的活动中,我configuration工具栏像这样: Toolbar toolbar = (Toolbar) findViewById(R.id.my_awesome_toolbar); toolbar.setNavigationIcon(R.drawable.ic_good); toolbar.setTitle("Title"); toolbar.setSubtitle("Sub"); toolbar.setLogo(R.drawable.ic_launcher); […]

使用Tab和新的工具栏(AppCompat v7-21)

我正在使用支持ActionBar标签和使用自定义ActionBar主题(使用http://jgilfelt.github.io/android-actionbarstylegenerator/创build),仅在用户展开search视图时才显示选项卡。 public boolean onMenuItemActionExpand(MenuItem item) { actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); return true; } } 我从ActionBar迁移到ToolBar。 我的应用程序确实需要支持api 9。 有没有办法使用它? Toolbar toolbar = (Toolbar) findViewById(R.id.new_actionbar); setSupportActionBar(toolbar); getSupportActionBar().setNavigationMode(ActionBar.NAVIGATION_MODE_TABS); 如果可能,如何使用我的自定义主题或样式工具栏? 文档说这是不赞成的,并build议使用其他types的导航。 但我不知道android中的其他组件具有相同的function。 一些帮助?

Android棒棒糖,AppCompat的ActionBar自定义视图不占用整个屏幕宽度

所以,我刚刚更新了我的代码库棒棒糖,我遇到的问题与操作栏。 我正在使用AppCompat和ActionBarActivity,并膨胀自定义视图。 看起来自定义视图不再占用整个屏幕的宽度,在左边留下一条细条 它曾经看的方式 它看起来现在 这是我用来设置操作栏的代码。 任何人有任何想法? final ActionBar actionBar = getSupportActionBar(); if(actionBar != null) { actionBar.setDisplayHomeAsUpEnabled(false); actionBar.setDisplayShowHomeEnabled(false); actionBar.setDisplayShowTitleEnabled(false); actionBar.setDisplayShowCustomEnabled(true); actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD); actionBar.setCustomView(R.layout.action_bar_content_search_custom_view); actionBar.setBackgroundDrawable(null); // actionBar.setStackedBackgroundDrawable(null); TextView title = (TextView) actionBar.getCustomView().findViewById(R.id.action_bar_title); title.setText(R.string.youtube); ImageView back = (ImageView) actionBar.getCustomView().findViewById(R.id.action_bar_back); back.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); } 编辑 现在取出自定义视图和改变背景占据了整个宽度。 所以问题是,我们如何使CustomView占据ActionBar的整个宽度?

为什么Eclipse创build新项目时会自动添加appcompat v7库支持?

为什么Eclipse创build新项目时会自动添加appcompat v7库支持? 我正在创build一个MainActivity应该扩展Activity的简单项目,但事实并非如此。 Eclipse自动添加操作栏支持。 如何在没有appcompat库的情况下创build一个简单的项目? 仅供参考,我已经下载了最新版本的ADT和最近更新的一切。 我正在使用Window 7 x64。

NoClassDefFoundError:android.support.v7.internal.view.menu.MenuBuilder

运行Android 4.2的三星设备上的Android appcompat v7库存在问题。 在开发者控制台中,我一直在使用以下堆栈跟踪导致崩溃: java.lang.NoClassDefFoundError: android.support.v7.internal.view.menu.MenuBuilder at android.support.v7.widget.PopupMenu.<init>(PopupMenu.java:66) at com.[my-package-name].CustomActivity$5.onClick(CustomActivity.java:215) at android.view.View.performClick(View.java:4222) at android.view.View$PerformClick.run(View.java:17620) at android.os.Handler.handleCallback(Handler.java:800) at android.os.Handler.dispatchMessage(Handler.java:100) at android.os.Looper.loop(Looper.java:194) at android.app.ActivityThread.main(ActivityThread.java:5391) at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:525) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) at dalvik.system.NativeStart.main(Native Method) 这是CustomActivity.java的215行: PopupMenu popup = new PopupMenu(CustomActivity.this, mImageViewMenu); 崩溃来自一系列设备,但总是三星,总是Android 4.2。 一个快速的networkingsearch引导我相信,许多人都有同样的问题,我试图解决这个问题的一些步骤是: 检查Android项目属性,确保appcompat库已正确添加。 检查Java构buildpath顺序和导出项目属性,确保Android依赖关系和Android专用库被选中。 确认该类包含在库中(android.support.v7.internal.view.menu.MenuBuilder)。 确认R.java位于android.support.v7.appcompat的gen目录下。 确认Manifest.xml活动中包含AppCompat主题。 清理和重build项目。 尽pipe采取了这些步骤,尽pipe它在所有其他设备和Android版本上运行,但崩溃报告仍然通过。

AppCompat v7 r21在values.xml中返回错误?

我正在使用Android Studio,当我将compile "com.android.support:appcompat-v7:21.0.0"添加到我的Gradle文件时,出现了很多错误: C:\Users\WindowsSucks\AndroidStudioProjects\MMMeds\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v11\values.xml Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'. Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'. Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'. Error:(36, 21) No resource found that matches the given name: attr 'android:actionModeShareDrawable'. C:\Users\WindowsSucks\AndroidStudioProjects\MMMeds\app\build\intermediates\exploded-aar\com.android.support\appcompat-v7\21.0.0\res\values-v14\values.xml Error:(9, 21) […]