作成したDbからランダムな単語をフェッチするhangman-appがあり、それを保存してからrandomedWord、保持するための別の文字列を作成しますrandomedWordが、「_」のみに置き換えます。これhiddenWordは、ユーザーが文字数を知るために表示されます。
ユーザーがonlicklistenerEnterfiresguess()メソッドを押したとき:
の値を持つローカル文字列を初期化する次のコードがありますTextView(userInput)。次に、推測が含まれている場合randomedWordは、推測をと同じ位置に配置しますがrandomedWord、ここでもう一度hiddenWord更新TextViewします。
推測方法:
public void guess()
{
String guess = userInput.getText().toString();
if(randomedWord.contains(guess))
{
hiddenWord = hiddenWord.replaceAll(guess, guess);
this.wordHolder.setText(hiddenWord);
} else
{
showImages();
}
}
私が思う問題はこの行です:
hiddenWord = hiddenWord.replaceAll(guess, guess);
なぜなら、hiddenWord「_」が含まれているだけなので、最初は何を置き換え、最後は「WITHWHAT」であるため、(推測、推測)で置き換えることはできません。
randomedWord推測で同じPOSITIONを置き換えるにはどうすればよいhiddenWordですか?