Подтвердить что ты не робот

Ошибка: не удается найти символьную переменную abc_ic_ab_back_mtrl_am_alpha

Я добавил фрагмент в мой проект Android Studio с помощью New > Fragment > Fragment (Blank). В результате, когда я пытаюсь запустить, проект не будет компилироваться, потому что он не может разрешить R.drawable.abc_ic_ab_back_mtrl_am_alpha в

toolbar.setNavigationIcon(R.drawable.abc_ic_ab_back_mtrl_am_alpha);

Есть идеи, как это решить?

Похоже, я также потерял доступ к android:buttonTint

4b9b3361

Ответ 1

Название ресурса было изменено в библиотеке поддержки 23.2.0.

Изменить abc_ic_ab_back_mtrl_am_alpha на abc_ic_ab_back_material

Изменить: В 23.2.1 имя компонента было изменено на abc_ic_ab_back_mtrl_am_alpha

Изменить: В 24.0.0 имя компонента было изменено на: abc_ic_ab_back_material

Ответ 2

Похоже, что в растровом формате больше нет изображений из-за векторной реализации в библиотеке поддержки. Поэтому я помещаю этот векторный чертеж, который представляет ту же стрелку, что и в предыдущей версии библиотеки поддержки. Щелкните правой кнопкой мыши на папке с возможностью переноса, Создать → Файл ресурса с возможностью рисования и вставьте этот код xml:

<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="24"
    android:viewportHeight="24">

    <path
        android:pathData="M0 0h24v24H0z" />
    <path
        android:fillColor="#ffffff"
        android:pathData="M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20v-2z" />
</vector>

Источник

Для API < 21 вам необходимо добавить эти свойства в файл сборки gradle:

Gradle Плагин 2.0 +

android {  
   defaultConfig {  
     vectorDrawables.useSupportLibrary = true  
    }  
 }

Gradle Плагин 1.5

android {  
   defaultConfig {  
     generatedDensities = []  
  }  

  // This is handled for you by the 2.0+ Gradle Plugin  
  aaptOptions {  
    additionalParameters "--no-version-vectors"  
  }  
 } 

Подробнее см. этот пост в блоге.

Ответ 3

В моем случае, я сделал это

final ActionBar ab = mActivity.getSupportActionBar();
             ab.setHomeAsUpIndicator(android.support.v7.appcompat.R.drawable.abc_ic_ab_back_material);

Ответ 4

У меня возникла эта проблема при обновлении библиотеки поддержки Android до версии 23.2.0

В моем случае я использовал конфликтующую стороннюю библиотеку.

Я решил переключиться на новую версию сторонней библиотеки, чтобы решить эту проблему.

Ответ 5

Извините, что это может быть не тот ответ, который вы ищете, но это случилось со мной всего несколько минут назад. Я был предупрежден Android Studio о том, что в моем файле Gradle появилась новая версия "com.google.android.gms" и "com.android.support", в то время я использовал 8.3.0 для прежний и 23.1.1 для последнего, поэтому я обновился до 8.4.0 и 23.2.0 и что, когда у меня возникла такая же проблема, как и вы, а Android Studio перепрыгнула в файл values-v11.xml в библиотеке для диалоговых окон материала AFollestad, и кажется, что это вызывает проблемы, потому что использует библиотеку AppCompat.

РЕДАКТИРОВАТЬ: только что нашел этот, если вы используете материальные диалоги, проверьте, находитесь ли вы в версии 0.8.5.5. Если нет, обновите его.