AppCompatActivity не работает должным образом

введите здесь описание изображенияЯ разрабатываю приложение, использующее AppCompatActivity. Я так много дней боролся с этой ошибкой, но мне не повезло, и я не ответил на такой ответ в StackOverflow. Gradle построен успешно без каких-либо ошибок. Но когда приложение установлено на устройстве, я получаю сообщение об ошибке принудительного закрытия.

Я прикрепляю сюда свой контент Android Monitor (logcat). Пожалуйста, помогите мне с этим.

java.lang.NoSuchMethodError:
android.support.v4.view.ViewCompat.setOnApplyWindowInsetsListener(Landroid/view/View;Landroid/support/v4/view/OnApplyWindowInsetsListener;)V
at
android.support.design.internal.ScrimInsetsFrameLayout.<init>(ScrimInsetsFrameLayout.java:61)
at
android.support.design.widget.NavigationView.<init>(NavigationView.java:99)
at
android.support.design.widget.NavigationView.<init>(NavigationView.java:95)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)   at
 sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
 at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at
org.jetbrains.android.uipreview.ViewLoader.createNewInstance(ViewLoader.java:465)
at
org.jetbrains.android.uipreview.ViewLoader.loadClass(ViewLoader.java:172)
at
org.jetbrains.android.uipreview.ViewLoader.loadView(ViewLoader.java:105)
at
com.android.tools.idea.rendering.LayoutlibCallbackImpl.loadView(LayoutlibCallbackImpl.java:186)
at
android.view.BridgeInflater.loadCustomView(BridgeInflater.java:334)
at
android.view.BridgeInflater.loadCustomView(BridgeInflater.java:345)
at
android.view.BridgeInflater.createViewFromTag(BridgeInflater.java:245)
at
android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:727)
at
android.view.LayoutInflater.rInflate_Original(LayoutInflater.java:858)
at
 android.view.LayoutInflater_Delegate.rInflate(LayoutInflater_Delegate.java:70)
at android.view.LayoutInflater.rInflate(LayoutInflater.java:834)  at
android.view.LayoutInflater.rInflateChildren(LayoutInflater.java:821)
 at android.view.LayoutInflater.inflate(LayoutInflater.java:518)

вот мой файл градиента прикреплен. Пожалуйста, взгляните на это.


person Riddhi Dudani    schedule 22.09.2016    source источник
comment
может быть, этот пост будет вам полезен: stackoverflow.com/questions/39049107/   -  person Pratik Dasa    schedule 22.09.2016
comment
Попробуйте обновить свои зависимости Gradle до более высоких версий, проверьте это: в android"> stackoverflow.com/questions/39034938/   -  person AbhayBohra    schedule 22.09.2016
comment
Это была версия 24.2.1, но с этой ошибкой. Затем мне пришлось понизить все до 23.4.0, и проблема та же. Не знаю, что делать.   -  person Riddhi Dudani    schedule 22.09.2016
comment
можете ли вы прислать мне свой исходный код, чтобы я импортировал его и проверил @RiddhiWala   -  person Pratik Dasa    schedule 22.09.2016
comment
@PratikDasa и sJy Пожалуйста, найдите мой файл gradle в самом вопросе. Я прикрепил его. Я не смог скопировать вставить код.   -  person Riddhi Dudani    schedule 22.09.2016
comment
Попробуйте исключить ваш модуль support-v4   -  person Piyush    schedule 22.09.2016
comment
ты исправил это??   -  person Ragu Swaminathan    schedule 22.09.2016
comment
Добавьте эту строку в gradle и проверьте ее: скомпилируйте «com.android.support:appcompat-v7:23.1.0» @RiddhiWala   -  person Pratik Dasa    schedule 22.09.2016
comment
Хорошо, позвольте мне проверить все решения.   -  person Riddhi Dudani    schedule 22.09.2016
comment
@Piyush, ты спасатель жизни! Большое спасибо. Я потратил впустую 2 дня после этого бесполезно .. Я так расслабился сейчас. Еще раз, спасибо. :)   -  person Riddhi Dudani    schedule 22.09.2016
comment
@RiddhiWala Np ! Добро пожаловать !!   -  person Piyush    schedule 22.09.2016


Ответы (2)


Ответ на мой вопрос дал @Piyush. Я думаю, две зависимости столкнулись. короче говоря, ответ на мой вопрос будет, если вы используете

 compile 'com.android.support:appcompat-v7:24.+'

и т.п.

затем НЕ ИСПОЛЬЗОВАТЬ

compile 'com.google.android:support-v4:r7'

вместе с ним.

person Riddhi Dudani    schedule 22.09.2016

Измените градиент совместимости вашего приложения, как показано ниже.

compile 'com.android.support:appcompat-v7:23.4.0'

не используйте Gradle с +

compile 'com.android.support:appcompat-v7:23.+'

Надеюсь это поможет..!!

person Ragu Swaminathan    schedule 22.09.2016