не найден идентификатор ресурса для приложения: 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 содержит только файлы классов.
Делай, как я говорю:
- импорт android-дизайн-библиотека. Проект находится на "sdk / extras / android / поддержка / дизайн/". И установить его как библиотеку проект, если это не так.
- импортируйте вышеуказанный проект в ваш основной проект как библиотека.
вы должны это сделать, потому что 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'
однако пару моментов отметить-
- эта библиотека поддержки не должна использовать другую версию, чем compileSdkVersion. Так как я использовал
compileSdkVersion 25
мне пришлось использоватьcompile 'com.android.support:design:25.3.1'
, а неcompile 'com.android.support:design:24.2.1'
- использование библиотеки дизайна требует использования тема.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>
вот как я это сделал
- импорт В7 Совместимости Приложений С *
C:\Productivity\android-sdks\extras\android\support\v7\appcompat
и проверить копирование в рабочее пространство в диалоговом окне импорта проекта.
- целевая Android версия сборки apcompat для Android 6.0 от
Проект- > Свойства - > Android
надо удалить все ошибки компиляции.
- импорт Дизайн Lib С
C:\Productivity\android-sdks\extras\android\support\design
выполните те же шаги для импорта проекта, упомянутого в 1 & 2.
- отметьте импортированный дизайн lib как Android lib, и если он показывает ошибку, добавьте AppCompat V7 lib в путь сборки вашего дизайна lib из
Проект- > Свойства - > Android.
-
наконец, добавьте дизайн и appcompat для построения пути вашего проекта Android
Проект- > Свойства - > Android
"очистить и построить" свой проект с Android 6.0 все ошибки компиляции должны быть ушел.
Поздравляю теперь вы можете использовать материальный дизайн в Eclipse.Надеюсь, это поможет кому-то