标签: android-actionbar-compat

为ActionBarCompat中的片段调用setDisplayHomeAsUpEnabled

我正在使用ActionBarCompat.当我加载子片段时,我希望主页按钮作为向上按钮.所以我从子片段调用了这个:

((ActionBarActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true);
Run Code Online (Sandbox Code Playgroud)

但仍然没有将主页按钮显示为向上按钮.我还增加了逻辑的ID android.R.id.homeonOptionsItemSelected,但它仍然无法正常工作.我有什么想法可以完成它吗?

android android-fragments android-actionbar-compat

12
推荐指数
2
解决办法
9165
查看次数

Actionbar menuitem文本为大写

我的操作栏中有一个菜单项,仅显示项目的文本 - 而不是图标.一切都很好,但只是某种程度上项目的标题是大写的.有人可以告诉我如何才能让它恢复原状.这是我有的菜单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/action_download"
            android:orderInCategory="99"
            app:showAsAction="always|withText"
            android:title="Download"/>

    </menu>
Run Code Online (Sandbox Code Playgroud)

我得到的项目显示为DOWNLOAD而不是Download

android android-appcompat android-actionbar android-actionbar-compat

12
推荐指数
2
解决办法
1万
查看次数

ActionBarCompat - 如何使用它

我正在尝试在自己的项目中使用ActionBarCompat.我已经打开了示例项目(http://developer.android.com/resources/samples/ActionBarCompat/index.html),但我不知道如何自己实现它.

我找不到任何类型的教程.我应该把这个项目作为一个图书馆吗?请有人给我一些指示.

android android-actionbar android-actionbar-compat

11
推荐指数
2
解决办法
2万
查看次数

SearchView on support.v7.appcompat库问题:默认9-patch背景无法正确呈现

我正在使用support.v7.appcompat库开发一个带ActionBar的应用程序.操作栏有效,显示了SearchView,提示显示.唯一的问题是SearchView的背景不是正确的scalling.通常的Insead,看起来很大并且带有9条补丁的黑色线条.

使用:

  • 从命令行开发,ant debug用于编译.
  • 在Linux Mageia 3上,ant版本:Apache Ant(TM)版本1.8.4于2013年1月11日编译
  • 使用project.properties行链接到库:

android.library.reference.1 = ../../../../../SDK /演员/机器人/支撑/ V7 /程序兼容性/

  • 使用@ style/Theme.AppCompat.Light
  • 在带有CM10-1的设备中,在带有4.1的设备中进行测试,使用带有API 8的模拟器(Android 2.2)进行测试.所有设备都有相同的结果.

截图:

在此输入图像描述

码:

DiccionariCatala.java(主要活动):

import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.SearchView;
import android.support.v4.view.MenuItemCompat;
import android.app.Activity;
import android.app.SearchManager;
import android.content.Context;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.MenuInflater;


public class DiccionariCatala extends ActionBarActivity
{
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState)
    {   
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }   

    @Override
    public boolean onCreateOptionsMenu(Menu menu){
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.menu_actions, menu); …
Run Code Online (Sandbox Code Playgroud)

android searchview android-support-library android-actionbar-compat

11
推荐指数
1
解决办法
2万
查看次数

ActionBarCompat和透明度

我想使支持库中的ActionBar完全透明,但是,由于背景堆栈,似乎更改背景drawable是不够的.如果你放置一个半透明的背景,你最后会得到它背后的默认背景.

有谁知道删除该背景的方法?

这是发生的事情:

动作条

背景drawable的代码:

<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <solid android:color="#66336688"/>
</shape>
Run Code Online (Sandbox Code Playgroud)

如您所见,drawable具有透明蓝色,与默认的灰色背景重叠.

android android-actionbar-compat

11
推荐指数
2
解决办法
5188
查看次数

如何自定义单个标签?(更改背景颜色,指示灯颜色和文字颜色)

在此链接中:如何以编程方式应用样式?

凯文格兰特对这个问题进行了解释我的问题与他的代码是上下文部分.确切地说:

ctv = new CustomView(context, R.attr.tabStyleAttr);
Run Code Online (Sandbox Code Playgroud)

在这段代码中它说:上下文无法解析为变量

我想将特定样式应用于选项卡,这就是设置主题对我不起作用的原因.我当然也欢迎任何替代我的问题.

我尝试更改操作栏选项卡的背景颜色,指示器颜色和文本颜色.

@Override
public void onTabSelected(ActionBar.Tab tab, FragmentTransaction fragmentTransaction) 
{
    CustomView ctv;
    ctv = new CustomView(this, R.attr.tabStyleAttr);        
    tab.setCustomView(ctv);  
    mViewPager.setCurrentItem(tab.getPosition());
}
Run Code Online (Sandbox Code Playgroud)

styles.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="Theme.Ab" parent="@android:style/Theme.Holo.Light">
        <item name="android:actionBarStyle">@style/abStyle</item> 
        <item name="@attr/actionBarTabStyle">@style/tabStyle</item>        
        <item name="android:actionBarTabTextStyle">@style/tabTextColor</item>
    </style>   

    <style name="abStyle" parent="@android:style/Widget.Holo.Light.ActionBar.Solid">
        <item name="android:background">@drawable/ab_solid_style</item>
        <item name="android:backgroundStacked">@drawable/ab_stacked_solid_style</item>
        <item name="android:backgroundSplit">@drawable/ab_bottom_solid_style</item>
        <item name="android:height">100dp</item>
    </style>    

    <style name="tabStyle" parent="@android:style/Widget.Holo.Light.ActionBar.TabView">

        <item name="android:background">@drawable/tab_indicator_ab_style</item>
    </style>

    <style name="tabTextColor" parent="@android:style/Widget.Holo.Light.ActionBar.TabText">
        <item name="android:textColor">@android:color/white</item>
    </style>



</resources>
Run Code Online (Sandbox Code Playgroud)

MainActivity.java(onCreate)

public void onCreate(Bundle savedInstanceState)
    {       
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // Create the …
Run Code Online (Sandbox Code Playgroud)

android android-viewpager android-tabs android-actionbar-compat

11
推荐指数
1
解决办法
3万
查看次数

ActionBar Compat ActionBarActivity setTitle在Android 2.X中不起作用

我的问题和这个问题一样.

我按照此说明设置了Android支持库.(我正在使用支持库,修订版19.0.1)

在本期中,谷歌的工作人员说"这已在支持库v19中修复".但是,它在我的设备(姜饼)中不起作用.

我试图找到解决方案,但我找不到.有任何想法吗?

android android-actionbar-compat

11
推荐指数
1
解决办法
6194
查看次数

如何使工具栏标题与ActionBar完全相同,而不将其设置为ActionBar?

背景

我希望在PreferenceActivity上显示一个ActionBar,因为它不适用于预蜂窝设备(即使在支持库中).

因为支持库上没有这样的类,所以我不能只调用"setSupportActionBar".我也不想使用一个库(比如这个),因为我发现的所有库仍然使用Holo样式,所以到目前为止它们还没有得到更新,考虑到这一点.

为此,我试图将ActionBar标题的外观和感觉模仿到支持库v7上的新工具栏类中.

问题

我已经成功地设置了一个标题和一个"向上"按钮,但我无法找到如何使它们像普通的动作栏一样可点击,包括触摸的效果.

代码

这是代码:

SettingsActivity.java

public class SettingsActivity extends PreferenceActivity
  {
  @Override
  protected void onCreate(final Bundle savedInstanceState)
    {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_settings);
    addPreferencesFromResource(R.xml.pref_general);
    final Toolbar toolbar=(Toolbar)findViewById(R.id.toolbar);
    toolbar.setBackgroundColor(getResources().getColor(R.color.windowBackgroundColor));
    toolbar.setTitle("Settings");
    toolbar.setClickable(true);
    toolbar.setLogo(getResIdFromAttribute(this,R.attr.homeAsUpIndicator));
    }

  public static int getResIdFromAttribute(final Activity activity,final int attr)
    {
    if(attr==0)
      return 0;
    final TypedValue typedvalueattr=new TypedValue();
    activity.getTheme().resolveAttribute(attr,typedvalueattr,true);
    return typedvalueattr.resourceId;
    }
  }
Run Code Online (Sandbox Code Playgroud)

activity_settings.xml

<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"
    tools:context="com.antonioleiva.materialeverywhere.SettingsActivity" >

    <include
        android:id="@+id/toolbar"
        layout="@layout/toolbar" />

    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <View
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:background="@drawable/abs__ab_solid_shadow_holo" /> …
Run Code Online (Sandbox Code Playgroud)

android android-actionbar-compat android-toolbar

11
推荐指数
2
解决办法
3万
查看次数

Android:如何/将ActionBar更改为ActionBarCompat(工具栏)的教程?

我一直坚持这个,检查官方指导等.任何教程/从ActionBar更改为ActionBarCompat的步骤(对于工具栏和旧版本的支持?我已导入appcompat-v7:21.0.+,试着

getSupportActionBar();

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar_actionbar);

setSupportActionBar(toolbar);
Run Code Online (Sandbox Code Playgroud)

将主题更改为appcompat主题样式...任何常见的错误要注意或想法?

继续遇到这种错误:

java.lang.RuntimeException: Unable to start activity ComponentInfo{com.battery.plusfree/com.battery.plusfree.MainCollectionActivity}: java.lang.NullPointerException
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2212)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2271)
        at android.app.ActivityThread.access$800(ActivityThread.java:144)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
        at android.os.Handler.dispatchMessage(Handler.java:102)
        at android.os.Looper.loop(Looper.java:136)
        at android.app.ActivityThread.main(ActivityThread.java:5146)
        at java.lang.reflect.Method.invokeNative(Native Method)
        at java.lang.reflect.Method.invoke(Method.java:515)
        at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:566)
        at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132)
        at dalvik.system.NativeStart.main(Native Method)
 Caused by: java.lang.NullPointerException
        at com.battery.plusfree.MainCollectionActivity.onCreate(MainCollectionActivity.java:133)
        at android.app.Activity.performCreate(Activity.java:5231)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2169)
            at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2271)
            at android.app.ActivityThread.access$800(ActivityThread.java:144)
            at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1205)
            at android.os.Handler.dispatchMessage(Handler.java:102)
            at android.os.Looper.loop(Looper.java:136)
            at android.app.ActivityThread.main(ActivityThread.java:5146)
            at java.lang.reflect.Method.invokeNative(Native Method)
            at java.lang.reflect.Method.invoke(Method.java:515)
            at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:732)
            at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:566)
            at de.robv.android.xposed.XposedBridge.main(XposedBridge.java:132) …
Run Code Online (Sandbox Code Playgroud)

android toolbar android-actionbar android-actionbar-compat android-toolbar

11
推荐指数
1
解决办法
2万
查看次数

使用appcompat-v7在Actionmode中自定义"后退"箭头颜色

我的主题基于Theme.AppCompat.Light如下:

<style name="core" parent="Theme.AppCompat.Light" >
    <!-- Material, Yo!-->
    <item name="colorPrimary">@color/theme_main_color</item>
    <item name="colorPrimaryDark">@color/deep_purple</item>
    <item name="colorAccent">@color/theme_accent_color</item>
    <item name="android:navigationBarColor" tools:ignore="NewApi">?attr/colorPrimary</item>
    <!-- Toolbar -->
    <item name="theme">@style/my_toolbar_theme</item>
    <item name="drawerArrowStyle">@style/my_drawer_arrow</item>
    <!-- Actionbar -->
    <item name="android:actionBarDivider">@null</item>
    <item name="android:actionBarTabStyle">@null</item>
    <item name="android:actionBarTabBarStyle">@null</item>
    <!-- Contextual Actionbar -->
    <item name="windowActionModeOverlay">true</item>
    <item name="actionModeBackground">?attr/colorAccent</item>
    <item name="actionModeStyle">@style/my_actionmode_style</item>
</style>

<style name="my_drawer_arrow" parent="Widget.AppCompat.DrawerArrowToggle" >
    <item name="spinBars">true</item>
    <item name="color">@color/theme_accent_color</item>
</style>

<style name="my_toolbar_style">
    <item name="android:id">@id/toolbar</item>
    <item name="android:minHeight">?attr/actionBarSize</item>
    <item name="android:layout_height">wrap_content</item>
    <item name="android:layout_width">match_parent</item>
    <item name="android:background">?attr/colorPrimary</item>
    <item name="android:elevation" tools:ignore="NewApi">5dp</item>
</style>

<style name="my_actionmode_style" parent="Widget.AppCompat.Light.ActionMode.Inverse" >
    <item name="titleTextStyle">@style/my_actionmode_title_style</item>
    <item name="subtitleTextStyle">@style/my_actionmode_subtitle_style</item>
</style> …
Run Code Online (Sandbox Code Playgroud)

android android-actionbar-compat

11
推荐指数
2
解决办法
6950
查看次数