2016-10-14 7 views
5

첫 번째 대상 API는 22 (Android L)입니다. Android 4.4 (Kitkat)를 지원하기 위해 대상 API를 19 개로 낮추기 전까지는 모든 것이 잘 작동했습니다. 이제 나는이 이상한 오류가 발생했습니다. 응용 프로그램이 충돌하지 않지만 일부 일반 단추 만 사라집니다. 레이아웃을 XML 파일과 코드를 통해 설정합니다. 오류android.graphics.drawable.RippleDrawable 오류

사람이 원인이 무엇인지 알고 있나요

을 android.support.v7.widget.AppCompatImageHelper.hasOverlappingRendering 방법에서 참조 클래스 'android.graphics.drawable.RippleDrawable'를 찾을 수 없습니다 오류? 어떻게 해결할 수 있습니까?

내 의존성 :

compile 'com.android.support:appcompat-v7:24.2.1' 
compile 'com.android.support:design:24.2.1' 
compile 'com.android.support:support-v4:24.2.1' 
compile 'com.android.support.constraint:constraint-layout:1.0.0-alpha9' 

업데이트 : 나는 새로운 drwabale-V21 폴더에 모든 벡터 파일을 이동했다. 안드로이드에서 android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2184) 에서 오류 팽창 클래스 : 바이너리 XML 파일 라인 # 11 : 지금은이 오류 :

Android.view.InflateException을 얻고있다. app.ActivityThread.handleLaunchActivity (ActivityThread.java:2233)

....에서에서가

불행하게도 안드로이드 4.4 나던 벡터 드로어 블에 대한 지원이있다. => Android 4.4의 벡터 드로어 블을 지원하려면 어떻게해야합니까?

+0

http://stackoverflow.com/a/35908070/1222099 문제는 당신이 RippleDrawable 대신 드로어 블을 반환 할 필요가있다 getPressedColorRippleDrawable. 그렇지 않으면 프리 롤리팝 기기에서 VerifyError가 발생합니다. – michoprogrammer

+1

코드를 통하지 않고 XML 파일을 통해 레이아웃을 설정하기 때문에 이것은 다른 문제입니다. 그리고 내 응용 프로그램은 충돌하지 않습니다. – Dominic

+0

두 개의 다른 레이아웃을 만들고 팽창시키는 것은 어떨까요? – michoprogrammer

답변

1

나도 지난 2 시간 동안 같은 문제가있었습니다. 도미닉의 의견 덕분에 나를 해결하기 위해 아래 라인을 찾아 도움을 준 Android Packages Page

implementation 'com.android.support:support-compat:26.1.0' 
implementation 'com.android.support:support-core-utils:26.1.0' 
implementation 'com.android.support:support-core-ui:26.1.0'