找不到与给定名称@ style / Widget.AppCompat.ActionBar匹配的资源

时间:2015-03-23 17:18:51

标签: android android-studio

我要迁移到android studio。

现在,我想导入这个lib:

https://github.com/kmshack/Android-ParallaxHeaderViewPager

下载后,我将它导入android studio:

  

file => import module => Android-ParallaxHeaderViewPager目录。

现在,我收到了这个错误:

  

找不到与给定名称匹配的资源   ' @风格/ Widget.AppCompat.ActionBar'

enter image description here

1 个答案:

答案 0 :(得分:0)

默认情况下,此库不支持appcompat-v7 21。

要解决此问题,请尝试执行此操作:

TransparentTheme 样式中:

remove: <item name="homeAsUpIndicator">@drawable/abc_ic_ab_back_holo_dark</item>
add: <item name="windowActionBar">false</item>

activity_main.xml 的末尾添加此工具栏,但在主根FrameLayout内。当然你可以调整它

<android.support.v7.widget.Toolbar
    android:id="@+id/toolbar"
    android:layout_width="match_parent"
    android:layout_height="56dp" >
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="horizontal" >
        <ImageView
            android:id="@+id/icon"
            android:layout_marginLeft="12dp"
            android:layout_marginTop="6dp"
            android:layout_marginBottom="6dp"
            android:layout_width="44dp"
            android:layout_height="44dp" />
        <TextView
            android:id="@+id/title"
            android:layout_width="wrap_content"
            android:layout_height="match_parent"
            android:gravity="center_vertical"
            style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title" />
    </LinearLayout>
</android.support.v7.widget.Toolbar>

然后,在 MainActivity.java

private Toolbar toolbar;
private TextView title;
private ImageView icon;

在onCreate方法中,在setContentView之后添加:

toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
icon = (ImageView) findViewById(R.id.icon);
title = (TextView) findViewById(R.id.title);

将getActionBarIconView方法替换为以下方法:

private ImageView getActionBarIconView() {
    return icon;
}

将setTitleAlpha方法替换为以下方法:

private void setTitleAlpha(float alpha) {
    mAlphaForegroundColorSpan.setAlpha(alpha);
    mSpannableString.setSpan(mAlphaForegroundColorSpan, 0, mSpannableString.length(), Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
    title.setText(mSpannableString);
}

<强>源:

https://github.com/kmshack/Android-ParallaxHeaderViewPager/issues/9