android - 从外部活动中隐藏 RecyclerView 中的按钮
问题描述
我创建了一个聊天应用程序,用于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
但我不确定。
谢谢
解决方案
反而:
Button confirm = findViewById( R.id.Confirm );
confirm.setVisibility( View.GONE );
替换为:
confirmB.setVisibility( View.GONE );
我希望有用
推荐阅读
- javascript - javascript:我的 IF 语句不起作用 - 试图了解我错在哪里
- python - 使用多个条件使用 SQLAlchemy/SQLite 更新连接
- java - 在 Windows 中使用 zip4j 提取 zipfile 时可以跳过符号链接吗?
- automation - 机器人框架 - 未找到关键字 - 使用 IP 地址作为目标
- html - 如何避免 Web 应用程序中的参数篡改和拦截?
- powershell - 如何使用 Windows PowerShell 动态“创建/监视/驱动/控制”另一个 PowerShell 实例?
- sql - 错误(8,1):PLS-00103:遇到符号“SET”
- bash - 将所有 bash 函数的参数传递给 docker exec 命令?
- java - 在recyclerView中显示位图时如何避免错误OOM
- flutter - Flutter - 显示字符串中的内联/嵌入图像