在聊天应用中如何实现打字指示器,有人正在键入,就像使用Firebase的Android Studio中的whats-app或Messenger一样
答案 0 :(得分:4)
要实现此目的,您需要在名为typing
的Firebase数据库中添加一个新字段,其默认值为false
。然后在addTextChangedListener()
上使用EditText
方法实际查看有人输入消息的时间。当有人输入内容时,会触发onTextChanged()
方法。现在将typing
的值从false更改为true
。在此之后,addValueEventListener
查看值何时更改。如果值为true,则在聊天室中显示该消息。所以,我建议你使用以下代码:
yourEditText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if (!TextUtils.isEmpty(s)) {
//Set the value of typing field to true.
} else {
// Set to false
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {}
@Override
public void afterTextChanged(Editable s) {}
});