无法在Kotlin代码中显示EditText错误

我已经把我的Android开发切换到了Kotlin,但是我正在处理一个我无法弄清楚的崩溃。 我习惯于在Java中能够在空的EditText上显示一个错误:

 if(mEmail.getText().toString().isEmpty()) { mEmail.setError("Email cannot be blank."); } 

据我所知,这可以被翻译成Kotlin:

 if(email.text.toString().isEmpty()) { email.error = "Email cannot be blank." } 

但是,这不起作用,我得到以下堆栈跟踪:

 Process: com.androidessence.capturethetag, PID: 4016 android.view.InflateException: Binary XML file line #17: Error inflating class TextView at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:763) at android.view.LayoutInflater.inflate(LayoutInflater.java:482) at android.view.LayoutInflater.inflate(LayoutInflater.java:414) at android.view.LayoutInflater.inflate(LayoutInflater.java:365) at android.widget.Editor.showError(Editor.java:319) at android.widget.Editor.setError(Editor.java:355) at android.widget.TextView.setError(TextView.java:4648) at android.widget.TextView.setError(TextView.java:4633) at com.androidessence.capturethetag.activities.LoginActivity.validateInput(LoginActivity.kt:31) at com.androidessence.capturethetag.activities.LoginActivity.access$validateInput(LoginActivity.kt:12) at com.androidessence.capturethetag.activities.LoginActivity$onCreate$1.onClick(LoginActivity.kt:19) at android.view.View.performClick(View.java:4780) at android.view.View$PerformClick.run(View.java:19866) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) Caused by: java.lang.RuntimeException: Failed to resolve attribute at index 24 at android.content.res.TypedArray.getColor(TypedArray.java:401) at android.widget.TextView.<init>(TextView.java:696) at android.widget.TextView.<init>(TextView.java:632) at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:60) at android.support.v7.widget.AppCompatTextView.<init>(AppCompatTextView.java:56) at android.support.v7.app.AppCompatViewInflater.createView(AppCompatViewInflater.java:92) at android.support.v7.app.AppCompatDelegateImplV7.createView(AppCompatDelegateImplV7.java:938) at android.support.v7.app.AppCompatDelegateImplV7.onCreateView(AppCompatDelegateImplV7.java:992) at android.support.v4.view.LayoutInflaterCompatHC$FactoryWrapperHC.onCreateView(LayoutInflaterCompatHC.java:44) at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:725) at android.view.LayoutInflater.inflate(LayoutInflater.java:482) at android.view.LayoutInflater.inflate(LayoutInflater.java:414) at android.view.LayoutInflater.inflate(LayoutInflater.java:365) at android.widget.Editor.showError(Editor.java:319) at android.widget.Editor.setError(Editor.java:355) at android.widget.TextView.setError(TextView.java:4648) at android.widget.TextView.setError(TextView.java:4633) at com.androidessence.capturethetag.activities.LoginActivity.validateInput(LoginActivity.kt:31) at com.androidessence.capturethetag.activities.LoginActivity.access$validateInput(LoginActivity.kt:12) at com.androidessence.capturethetag.activities.LoginActivity$onCreate$1.onClick(LoginActivity.kt:19) at android.view.View.performClick(View.java:4780) at android.view.View$PerformClick.run(View.java:19866) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5254) at java.lang.reflect.Method.invoke(Native Method) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:903) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:698) 

任何想法,为什么这是在Kotlin崩溃?

编辑

有关更多信息,可以在这里看到我的content_login.xml文件。 我用Gist来节省空间。

另外,我从来没有调用findViewById(); 在我的EditText因为Kotlin-Android Extension Plugin可以做到这一点,在这里提到: https : //kotlinlang.org/docs/tutorials/android-plugin.html

我毫不怀疑它引用了正确的EditText ,因为日志记录显示我能确定EditText为空,但无法设置错误属性。