1

У меня очень похожая проблема относительно того, что было описано в этом вопросе, но ответ взломан и не совсем правильный ответ, хотя он работает.Android Studio 1.4.0 Drawable-v21 item проигнорирован в пользу Drawable

Android Studio 1.4: drawable-v21 ignored when using "File/New/Vector Asset" option

У меня есть кнопка, что я хочу, чтобы применить цвет к отжатому на pre21 устройствах, а также использовать пульсации на v21 + устройствах.

В вытяжке папке я button_primary_theme

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_pressed="true"> 
     <shape> 
      <solid android:color="@color/themePimaryrOnePressed" /> 

     </shape> 
    </item> 
    <item> 
     <shape> 
      <solid android:color="@color/themePrimaryOne" /> 
     </shape> 
    </item> 
</selector> 

В папке вытяжке-V21 У меня

<?xml version="1.0" encoding="utf-8"?> 
<ripple xmlns:android="http://schemas.android.com/apk/res/android" 
    android:color="?attr/colorControlHighlight"> 
    <item android:drawable="?attr/colorPrimary"/> 
</ripple> 

Независимо от того, что я делаю, я не могу получить макет использовать пульсацию эффект из папки v21 на моем устройстве Lollipop. Он продолжает использовать готовый леопап.

<Button 
android:id="@+id/getting_started" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:background="@drawable/button_primary_theme" /> 

В другом ответе, он сделал отдельно с именем файла для V21 эффекта, но это означает, что мне нужна новая копия макета в дополнении к новому Drawable, и это не должно быть необходимым, чтобы получить это работать.

Я пробовал очистить проект, но он по-прежнему использует не v21 drawable.

Как я могу заставить это работать, не делая копии всего?

+0

Я бы начал с того, что переместил оба в «-nodpi» варианты своих каталогов ('res/drawable-nodpi /' и 'res/drawable-nodpi-v21 /'). Возможно, это само по себе прояснит вашу проблему. – CommonsWare

+0

Я не уверен, почему, но я действительно был в папках drawable-nodpi и drawable-v21. Когда я переместил drawable-nodpi в папку с возможностью переноса, он начал работать правильно. Я ответил на это. – Ben987654

ответ

1

Похоже, что это была моя ошибка. Надеюсь, это может помочь кому-то другому.

Моя нормальная выкачка была на самом деле в папке drawable-nodpi, а не на рисовании. Я предполагаю, что это как-то переопределяло версию папки v21.