gpt4 book ai didi

java - 在 View 持有者中使用if else禁用edittext android

转载 作者:行者123 更新时间:2023-11-29 20:10:33 25 4
gpt4 key购买 nike

请帮助我完成关于如何使用 viewholder 禁用编辑文本的噩梦,或者如何使用 if 和 else 语句禁用编辑文本的噩梦

我有一个回收站 View ,它列出了所有名称和他们的消息。 (信使就像)。不知何故,回收站 View 由名称、消息和一个小标签 TextView “客户关闭”组成,如果他们要单击由标签“客户关闭”组成的回收站 View ,他们将无法发送消息,因为它已经关闭。否则,所有包含标签“客户已关闭”的回收站 View 都将其编辑文本设置为 false。

 public void bind(final Account account, final FirebaseChat chat) {
itemView.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Context context = itemView.getContext();
if (context instanceof NavigationActivity) {
final Activity activity = (Activity) context;

final Intent intent = new Intent(itemView.getContext(), myChat.class);
intent.putExtra(ChatActivity.KEY_NEW, false);
intent.putExtra(ChatActivity.KEY_ACCOUNT, account);
intent.putExtra(ChatActivity.KEY_CHAT, chat);

activity.startActivity(intent);
}
}
});

cName.setText(chat.getName());
cName.setTypeface(chat.getReadCount() < chat.getNumMessages() ? Typeface.DEFAULT_BOLD : Typeface.DEFAULT);
cTextDate.setText(getFormattedDate(chat.getLastTime()));
cTextMessage.setText(chat.getLastMessage());
cTextMessage.setTypeface(chat.getReadCount() < chat.getNumMessages() ? Typeface.DEFAULT_BOLD : Typeface.DEFAULT);



}




public void bind(final Account account, final FirebaseChatInfo customerInfo) {
itemView.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Context context = itemView.getContext();
if (context instanceof NavigationActivity) {
final Activity activity = (Activity) context;
final Intent intent = new Intent(itemView.getContext(), myChat.class);
intent.putExtra(ChatActivity.KEY_NEW, false);
intent.putExtra(ChatActivity.KEY_ACCOUNT, account);
intent.putExtra(ChatActivity.KEY_CHAT_INFO, customerInfo);

activity.startActivity(intent);
}
}
});




cName.setText(chatInfo.getName());
cName.setTypeface(chatInfo.isLastVisitorMessaged() ? Typeface.DEFAULT_BOLD : Typeface.DEFAULT);
cTextDate.setText(getFormattedDate(chatInfo.getLastTime()));
cTextMessage.setText(chatInfo.getLastMessage());
cMessage.setTypeface(chatInfo.isLastVisitorMessaged() ? Typeface.DEFAULT_BOLD : Typeface.DEFAULT);

this.shoptag = (TextView) itemView.findViewById(R.id.shoptag);
shoptag.setText(chatInfo.getShop_id());
this.customerclosed = (TextView) itemView.findViewById(R.id.customer_closed);
this.customerclosed.setVisibility(chatInfo.isClosed() ? View.GONE : View.VISIBLE);
this.message_editext = (EditText)itemView.findViewById(R.id.message_editext);

message_text.setEnabled(!chatInfo.isClosed());

if(customerInfo.isClosed())
{

message_text.setEnabled(false);


}else {

message_textt.setEnabled(true);
}

}

我遇到了这个错误

java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.EditText.setEnabled(boolean)' on a null object reference

最佳答案

你所要做的就是添加else标签

    if(customerInfo.isClosed){
message_editext.setEnabled(false);
} else {
message_editext.setEnabled(true);
}

关于java - 在 View 持有者中使用if else禁用edittext android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35031470/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com