This is my code to get the variable from firebase, it still return right when i log it
holder.setItemClickListener(new TaskViewHolder.ItemClickListener() {
@Override
public void onClick(View view, int position, boolean isLongClick) {
Intent intent = new Intent(context, TaskDetail.class);
FirebaseDatabase database = FirebaseDatabase.getInstance();
DatabaseReference databaseReference = database.getReference("Users");
databaseReference.child(FirebaseAuth.getInstance().getCurrentUser().getUid())
.child("task")
.orderByChild("id")
.equalTo(taskList.get(position).getId())
.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot snapshot) {
for (DataSnapshot ds: snapshot.getChildren()){
TaskModel task = ds.getValue(TaskModel.class);
Log.d("TEST", "value: "+ task.getTask());
intent.putExtra("task", task.getTask().toString());
intent.putExtra("id", task.getId());
intent.putExtra("impo", task.getImpo());
intent.putExtra("done", task.getDone());
Log.d("TEST", "value: "+ ds.child("task").getValue());
}
}
@Override
public void onCancelled(@NonNull DatabaseError error) {
}
});
context.startActivity(intent);
}
});
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_task_detail);
Intent intent = getIntent();
String task = intent.getStringExtra("task");
int id = intent.getIntExtra(("id"),0);
int done = intent.getIntExtra(("done"),0);
int impo = intent.getIntExtra(("impo"),0);
btnSave = findViewById(R.id.btnSaveEdit);
txtTask = findViewById(R.id.txtTask);
btnSave.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.d("TEST-ID", "task"+task);
}
});
putExtra the variable to another activity