0

私はチャット用のアプリを開発しています。ユーザーが入力したとき、またはユーザーが完全に消去したときに入力ステータスを更新するイベントを取得できます。「入力していないステータス」として更新し、オンラインとして表示できます。このプロセスがうまくいくまで。

しかし、問題は、ユーザーがいくつかの行を入力して停止したときに、whatsapp で適用される入力を表示しないことです。これをどのように処理しますか?

これが私がしたコードです。

        ChatMsg.addTextChangedListener(new TextWatcher() {

            @Override
            public void onTextChanged(CharSequence s, int start,
                    int before, int count) {
                   if (edtChatMsg.getText().toString().trim().length() > 0) {
                    if (!isTyping) {
                            isTyping = true;
                            serviceCall();
                          }
                  else{
                      isTyping = false;
                        serviceCall();
                      }
            }
        so at result
    @Override
     protected void onTyping(String message) {
    if (message.equalsIgnoreCase("Typing…")) {
        txtUserPersonStatus.setText("Typing…");
    } else {
        txtUserPersonStatus.setText("Online");
    }
}

私の質問は、ユーザーがキーボードをしばらく入力してから停止したときの処理方法です。

ありがとう。

4

3 に答える 3

0

私はあなたが使用する必要があると思います:

@Override
public void afterTextChanged(Editable arg0) {
    //  arg0=null ,Handler ---is empty ;

}

@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
        int arg3) {
    // Handler --- is typing


}
于 2015-12-24T16:11:29.130 に答える