我尝试为我的应用程序创建一个登录屏幕,但是当我输入应该有效的正确 ID 和密码时,我的应用程序不断停止。此外,当我调试代码时,错误消息如下:
W/ClassMapper: No setter/field for User found on class com.example.(Projectname).User
No setter/field for BookReport found on class com.example.(Projectname).User
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.(Projectname), PID: 3339
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.equals(java.lang.Object)' on a null object reference
at com.example.(Projectname).LoginScreen$1$1.onDataChange(LoginScreen.java:79)
出来了。为什么会发生这种情况?
最佳答案
看起来com.example.hellobook.User
类没有为其字段定义setter。尝试为所有字段定义一个 setter,以便语句 foundUser = dataSnapshot.getValue(User.class);
可以创建正确的 User
对象
例如
public void setBookReport(BookReport bookReport){
this.bookReport = bookReport;
}
关于java - 在我的类(class)中找不到 ( ) 的 setter /字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57698309/