日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

《Android MVPArms 使用butterknife遇到的坑》

發布時間:2023/12/9 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《Android MVPArms 使用butterknife遇到的坑》 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、感謝

需要感謝JessYan大神的框架。

二、此處有坑,做個記錄。

使用butterknife時出現view對象有實例化,點擊事件也有問題,自己findbyId又是可以。

2019-04-16 11:50:10.889 25584-25584/dashuai.yy.mvparms.smartcampus E/AndroidRuntime: FATAL EXCEPTION: mainProcess: dashuai.yy.mvparms.smartcampus, PID: 25584java.lang.RuntimeException: Unable to start activity ComponentInfo{dashuai.yy.mvparms.smartcampus/dashuai.yy.mvparms.smartcampus.mvp.ui.activity.ChangePSDActivity}: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter $receiverat android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3303)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3411)at android.app.ActivityThread.-wrap12(Unknown Source:0)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994)at android.os.Handler.dispatchMessage(Handler.java:108)at android.os.Looper.loop(Looper.java:166)at android.app.ActivityThread.main(ActivityThread.java:7529)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter $receiverat com.jakewharton.rxbinding3.view.RxView__ViewClickObservableKt.clicks(Unknown Source:2)at com.jakewharton.rxbinding3.view.RxView.clicks(Unknown Source:1)at dashuai.yy.mvparms.smartcampus.mvp.ui.activity.ChangePSDActivity.btnClick(ChangePSDActivity.java:89)at dashuai.yy.mvparms.smartcampus.mvp.ui.activity.ChangePSDActivity.initData(ChangePSDActivity.java:79)at com.jess.arms.base.BaseActivity.onCreate(BaseActivity.java:109)at dashuai.yy.mvparms.smartcampus.mvp.ui.activity.ChangePSDActivity.onCreate(ChangePSDActivity.java:156)at android.app.Activity.performCreate(Activity.java:7383)at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1218)at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3256)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3411)?at android.app.ActivityThread.-wrap12(Unknown Source:0)?at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1994)?at android.os.Handler.dispatchMessage(Handler.java:108)?at android.os.Looper.loop(Looper.java:166)?at android.app.ActivityThread.main(ActivityThread.java:7529)?at java.lang.reflect.Method.invoke(Native Method)?at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)?at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:921)?

三、分析

1.看錯誤日志的話,是kotlin引起的,但是并沒有使用kotlin;

2.有可能是id找不到,但是清單配置文件里面是有這個id,并且也只用一個文件,不存在重復或缺失的問題;

3.butterknift環境配置問題,檢查了好幾遍也不是這個問題;

4.回到id是不是有問題。因為使用MVPArms的toolbar,在使用butterknift的時候,會自動生成注解代碼。于是問題找到了,toolbar這幾行代碼影響了view的實例化。

/*** 需要注釋掉*/ // @BindView(R.id.toolbar) // Toolbar toolbar;@BindView(R.id.toolbar_back)RelativeLayout toolbarBack;@BindView(R.id.toolbar_title)TextView toolbarTitle;@BindView(R.id.etPhone)EditText etPhone;@BindView(R.id.etNewPSD)EditText etNewPSD;@BindView(R.id.etNewAgainPSD)EditText etNewAgainPSD;@BindView(R.id.confirms)Button confirms;

內心惆悵,半天時間就這樣過去了!

總結

以上是生活随笔為你收集整理的《Android MVPArms 使用butterknife遇到的坑》的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。