レートをデフォルト値= "0"に設定しますが、結果はnullです。それが必要のように(金額はRider.classに追加されている)率の値は、Firebaseのテーブルに追加されることはありません...デフォルト値を設定しますが、結果はnullです
修正するためにどのように任意のアイデアをいただければ幸いです....
nav_header_home
<TextView
android:id="@+id/txtStars"
android:text="4"
android:layout_weight="1"
android:layout_width="0dp"
android:layout_height="wrap_content" />
ホーム
// properties:
Textview txtStars;
// onCreate:
View navigationHeaderView = navigationView.getHeaderView(0);
txtStars = navigationHeaderView.findViewById(R.id.txtStars);
txtStars.setText(String.format("%s", Common.currentUser.getRates()));
MainActivity自動ログイン方法でMainActivityで
// showRegisterDialog() ...
// Register new user
auth.createUserWithEmailAndPassword(edtEmail.getText().toString(),
edtPassword.getText().toString())
.addOnSuccessListener(new OnSuccessListener<AuthResult>() {
@Override
public void onSuccess(AuthResult authResult) {
// Save user to db
Rider rider = new Rider();
rider.setRates("0");//<---- default value
Home.java
@SuppressWarnings("StatementWithEmptyBody")
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
int id = item.getItemId();
if (id == R.id.nav_signOut) {
signOut();
} else if (id == R.id.nav_updateInfo) {
showUpdateInfoDialog();
}
return true;
}
....(それは自動ログインを持っているので)、また、追加する必要がありました。
// fetch data an save to variable
FirebaseDatabase.getInstance().getReference(Common.user_rider_tbl)
.child(FirebaseAuth.getInstance().getCurrentUser().getUid())
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
Common.currentUser = dataSnapshot.getValue(Rider.class);
waitingDialog.dismiss();
Intent i = new Intent(RiderActivity.this,
Home.class);
startActivity(i);
finish();
}
@Override
public void onCancelled(DatabaseError databaseError) {}
});
、txtStars = nullを
ゲッターとセッターメソッドを定義するクラスを投稿することができます。その結果、null値が割り当てられている理由がわかります – Aaron
@AaronはRider.classを追加しました – LizG
最後に、スクリーンショットを印刷したり、エラーログも表示されます。 – Aaron