Я создал приложение чата, которое использует RecyclerView
для создания сообщений.
Деятельность, в которой все действия чата, называются ChatActivity
.
В некоторых В случаях, RecyclerView
создает сообщение, содержащее кнопку Confirm
.
Кнопка имеет listener
для RecyclerView
и все это работает.
Мне бы хотелось, чтобы после того, как пользователь нажал на Confirm
, visibility
кнопки будет установлено на GONE
.
Я попытался добавить внутри моего прослушивателя щелчков следующее, однако он не скрывал кнопки.
ChatAdapter.OnConfirmClickListener confirmListener = new ChatAdapter.OnConfirmClickListener(){
@Override
public void onClick(Button confirmB) {
Log.d( "ERROR", "error" );
DocumentReference IsConfirmed = db.collection( "Chats" ).document( chatID );
IsConfirmed
.update( "ConfirmedFlag", auth.getUid() )
.addOnSuccessListener( new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
Button confirm = findViewById( R.id.Confirm );
confirm.setVisibility( View.GONE );
Log.d( "WHAT", "DocumentSnapshot successfully updated!" );
}
} )
.addOnFailureListener( new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception e) {
Log.w( "WHAT", "Error updating document", e );
}
} );
}
};
Есть причина, по которой он не работает? Я подумал, может быть, есть проблема с View
?
Кроме того, возможно, из-за того, что он был создан внутри адаптера, невозможно установить visibility
в GONE
, но я не уверен.
Спасибо