つまり、どの関数でテキストウォッチャーを使用する必要がありますか?onResume()関数で使用しようとしましたが、機能しませんでした。
ユーザーが入力しているときに、[編集テキスト]ボックスに入力された各文字の1つをチェックしようとしています。具体的には、ユーザーに謎を解き、答えは「SOS」です。答えは[編集テキスト]ボックスに表示され、入力直後に各文字をチェックしたいと思います(編集テキストボックスに最大長属性を追加して、3を超えないようにしました)。間違った文字を見つけたら、Xアイコンの画像を表示したいのですが、文字が正しければその逆になります。
これが私のTextWatcherコードスニペットです:
final EditText editText=(EditText)findViewById(R.id.editTxt_three);
editText.addTextChangedListener(new TextWatcher()
{
@Override
public void onTextChanged(CharSequence s, int start, int before, int count)
{
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after)
{
}
@Override
public void afterTextChanged(Editable s)
{
for(int i=0;i<editText.length();i++)
{
if(i==0)
{
img=(ImageView)findViewById(R.id.icon1);
if(s.charAt(i)!='s' || s.charAt(i)!='S')
img.setVisibility(1);
else
img.setVisibility(0);
}
if(i==1)
{
img=(ImageView)findViewById(R.id.icon2);
if(s.charAt(i)!='o' || s.charAt(i)!='O')
img.setVisibility(1);
else
img.setVisibility(0);
}
if(i==2)
{
img=(ImageView)findViewById(R.id.icon3);
if(s.charAt(i)!='s' || s.charAt(i)!='S')
img.setVisibility(1);
else
img.setVisibility(0);
}
}
}
});
要するに、このコードはどこで使用すればよいですか?あなたが何かを考えたら、私のコードを自由に単純化してください:)