私はのフッタとしてView
を使用していますEditText
があります。私は、フォーカスにアクセスしようとしている/フォーカスイベントを失うが、何らかの理由で、フォーカスごとに複数回発射している。ここで何が起こっているのですか?Android - ListView EditTextフォーカスの問題
// in onCreate
// ...
// the footer
View v = getLayoutInflater().inflate(R.layout.comment_edittext, null);
EditText commentEditText = (EditText)v.findViewById(R.id.comment_edittext);
commentEditText.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus)
{
U.log("View: " + v.getClass().getName().toString());
if(hasFocus)
{
U.log("Clicked");
}
else
{
U.log("Un Clicked");
}
}
});
// add the footer
commentListView.addFooterView(v);
// ...
キーボードが表示されますワンタッチの出力は、次のとおりです。
04-11 10:22:17.449: E/004 - X(4576): View: android.widget.EditText
04-11 10:22:17.459: E/004 - X(4576): Clicked
04-11 10:22:17.569: E/004 - X(4576): View: android.widget.EditText
04-11 10:22:17.569: E/004 - X(4576): Un Clicked
04-11 10:22:17.569: E/004 - X(4576): View: android.widget.EditText
04-11 10:22:17.569: E/004 - X(4576): Clicked
04-11 10:22:17.689: E/004 - X(4576): View: android.widget.EditText
04-11 10:22:17.689: E/004 - X(4576): Un Clicked
04-11 10:22:17.709: E/004 - X(4576): View: android.widget.EditText
04-11 10:22:17.709: E/004 - X(4576): Clicked
私は種類のそれはtrue
にhasFocus
セットで複数のイベントを呼び出す理解し、なぜ、その後もありますすることができますfalse
s、Un Clicked
ログをトリガーしますか?
編集:私は、ビューのうち、EditText
を動かし、上下ListView
をスクロールするたびはさらに、それは同様にこれらのイベントを呼び出します。おそらく間違ったリスナータイプを使用していますか?
私の推測では、あなたのonCreateメソッドは何回か呼び出されます。 – njzk2