2016-08-30 4 views
1

Попытка вызвать виртуальный метод: void android.widget.Button.setTag(java.lang.Object)
по ссылке нулевого объекта.NullPointerException: попытка вызвать виртуальный метод

ошибка, когда я использую androiddataBinding на кнопках, как:

<Button 
    android:id="@+id/btn_login" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_marginLeft="20dp" 
    android:layout_marginRight="20dp" 
    android:layout_marginTop="50dp" 
    android:background="@{[email protected]/shape_gray_corner:@color/colorWhite}" 
    android:text="@string/text_login" 
    android:onClick="onViewClik" 
    android:textColor="@color/colorWhite" 
    android:textSize="@dimen/textsize_24" /> 
+0

ли вы использовать тег привязки и связанное приложение кнопки правильно к вашей деятельности? – Nivedh

+0

yes, android: background = "@ drawable/shape_gray_corner" в порядке, просто получите ошибку при использовании android: background = "@ {userInfo.isEmpty? @ Drawable/shape_gray_corner: @ color/colorWhite}" –

+0

Можете ли вы проверить это программно внутри вашей модели и userInfo.getImage здесь в drawable. А также, что вы проверяете объект null или нет? Проверьте userInfo.name что-то вроде этого – Nivedh

ответ

0

Я думаю, вы должны попробовать цвет вместо вытяжки по умолчанию или использовать вытяжку в обоих местах.

как этого

android:background="@{userInfo.isEmpty ? @color/colorYellow : @color/colorWhite}" 
+0

спасибо, я пытался, но не работает я решена другой метод андроид: background = "@ drawable/selector_button_enable" android: enabled = "@ {! TextUtils.isEmpty (userInfo.login_name) & &! TextUtils.isEmpty (userInfo.password)}" –

 Смежные вопросы

  • Нет связанных вопросов^_^