не найден идентификатор ресурса для приложения: layout scrollflags из CollapsingToolbarLayout

название этого вопроса в основном все сказано. Я получаю ошибку: идентификатор ресурса для приложения: layout_scrollflags из CollapsingToolbarLayout не найден. Я использую eclipse и импортировал файл jar библиотеки дизайна. Я могу использовать макеты поддержки дизайна в своих классах, так что это правильно

это кусок кода, который я использую:

<LinearLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@color/activityBg"
tools:context=".MainActivity"
>

<android.support.design.widget.AppBarLayout
    android:layout_height="wrap_content"
    android:layout_width="match_parent">

    <android.support.design.widget.CollapsingToolbarLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            app:layout_scrollFlags="scroll|exitUntilCollapsed">

        <include
            layout="@layout/toolbar"/>

    </android.support.design.widget.CollapsingToolbarLayout>
</android.support.design.widget.AppBarLayout>

примеры: http://android-developers.blogspot.in/2015/05/android-design-support-library.html

5 ответов


только импортировать файл jar библиотеки не хватает. Вам необходимо импортировать ресурс android-дизайн-библиотека проект, в то время как файл jar содержит только файлы классов.

Делай, как я говорю:

  1. импорт android-дизайн-библиотека. Проект находится на "sdk / extras / android / поддержка / дизайн/". И установить его как библиотеку проект, если это не так.
  2. импортируйте вышеуказанный проект в ваш основной проект как библиотека.

вы должны это сделать, потому что xmlns:app="http://schemas.android.com/apk/res-auto" означает, что вам нужны локальные ресурсы из вашего проекта библиотеки или текущего проекта, в этом случае это означает, что вам нужны ресурсы из проекта библиотеки android-дизайн-библиотека.


попробуй такое

добавить приложение уровень построить.Gradle в

    compile 'com.android.support:design:24.2.1'

затем построить ->Перестроить Проект


как заявили другие, вам определенно нужно добавить Библиотека Поддержки Дизайна зависимость от вашего приложения android. Самый простой способ-добавить следующий файл gradle уровня приложения -

compile 'com.android.support:design:25.3.1'

однако пару моментов отметить-

  1. эта библиотека поддержки не должна использовать другую версию, чем compileSdkVersion. Так как я использовал compileSdkVersion 25 мне пришлось использовать compile 'com.android.support:design:25.3.1', а не compile 'com.android.support:design:24.2.1'
  2. использование библиотеки дизайна требует использования тема.appcompat или потомок. Если вы хотите добавить actionbar в свою деятельность, ваша тема должна быть AppCompat. В моем случае я использовал android:Theme.Material из-за которых он терпел неудачу. Изменение его на Theme.AppCompat.Light.NoActionBar работал для меня.

для этого вы должны использовать этот тип иерархии макетов. Убедитесь, что библиотека поддержки проектирования включена в качестве справочного проекта в случае eclipse

<?xml version="1.0" encoding="utf-8"?>
<android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true" >

    <android.support.design.widget.AppBarLayout
        android:id="@+id/appbarlayout"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:fitsSystemWindows="true" >

        <android.support.design.widget.CollapsingToolbarLayout
            android:id="@+id/collapsing_toolbar_layout"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:layout_scrollFlags="scroll|exitUntilCollapsed"
            android:fitsSystemWindows="true"
            app:contentScrim="?attr/colorPrimary"
            app:expandedTitleMarginEnd="64dp"
            app:expandedTitleMarginStart="48dp" >

            <ImageView
                android:id="@+id/ivProfileImage"
                android:layout_width="match_parent"
                android:layout_height="250dp"
                app:layout_collapseMode="parallax"
                android:contentDescription="@null"
                android:fitsSystemWindows="true"
                android:minHeight="100dp"
                android:scaleType="fitXY" />

            <android.support.v7.widget.Toolbar
                android:id="@+id/toolbar"
                android:layout_width="match_parent"
                android:layout_height="?attr/actionBarSize"
                app:layout_collapseMode="pin"
                app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
                app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
        </android.support.design.widget.CollapsingToolbarLayout>
    </android.support.design.widget.AppBarLayout>

    <android.support.v4.widget.NestedScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_below="@id/toolbar"
        android:layout_gravity="fill_vertical"
        app:layout_anchorGravity="top|start"
        app:layout_behavior="@string/appbar_scrolling_view_behavior" >
    </android.support.v4.widget.NestedScrollView>

вот как я это сделал

  1. импорт В7 Совместимости Приложений С *

C:\Productivity\android-sdks\extras\android\support\v7\appcompat

и проверить копирование в рабочее пространство в диалоговом окне импорта проекта.

  1. целевая Android версия сборки apcompat для Android 6.0 от

Проект- > Свойства - > Android

надо удалить все ошибки компиляции.

  1. импорт Дизайн Lib С

C:\Productivity\android-sdks\extras\android\support\design

выполните те же шаги для импорта проекта, упомянутого в 1 & 2.

  1. отметьте импортированный дизайн lib как Android lib, и если он показывает ошибку, добавьте AppCompat V7 lib в путь сборки вашего дизайна lib из

Проект- > Свойства - > Android.

  1. наконец, добавьте дизайн и appcompat для построения пути вашего проекта Android

    Проект- > Свойства - > Android

"очистить и построить" свой проект с Android 6.0 все ошибки компиляции должны быть ушел.

Поздравляю теперь вы можете использовать материальный дизайн в Eclipse.Надеюсь, это поможет кому-то