-6

乱数を推測するためにプログラムを実行しましたが、Rの場合、「Rは変数に解決できません」というエラーが何度も発生します。また、android.Rをインポートしようとしています。しかし、エラーなしで動作することはできませんでした。「main」または「R.layout.main」にエラーが発生します。だから問題を修正してください。

public class GuessGame extends Activity {
    Button btnGuess;
   private EditText enter;
   private GuessGame mcontext;
   private Double guess;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    final Random rand= new Random();
    final int numberToGuess= rand.nextInt(20);
    int numberOfTries=0;

        final boolean win= false;
        btnGuess= (Button)findViewById(R.id.btnGuess);
        enter= (EditText)findViewById(R.id.EnterNumber);

        TextView tv= (TextView) findViewById(R.id.dislpayResult);
        guess=new Double(enter.getText().toString());


     btnGuess.setOnClickListener(new OnClickListener() {
         private AlertDialog show;
         @Override
            public void onClick(View v) {
             while(win == false){
                 if((enter.getText().length() == 0) || (enter.getText().toString() == "")){

                     show= new AlertDialog.Builder(mcontext).setTitle("Error Was Found")
                        .setMessage("Input are Emppty")
                        .setPositiveButton("Ok", null).show();
            }
            else if(guess == numberToGuess){
                //win = true;
                Toast.makeText(GuessGame.this, "You have win", Toast.LENGTH_SHORT).show();
            }
            else if(guess < numberToGuess){
                Toast.makeText(GuessGame.this, "You guess is to low", Toast.LENGTH_SHORT).show();
            }
            else if(guess > numberToGuess){
                Toast t=Toast.makeText(GuessGame.this, "You guess is to high", Toast.LENGTH_SHORT);
                t.show();
            }
          }
        }
    });
    tv.setText("You win");
    tv.setText("Yhe Number was" + numberToGuess);
    tv.setText("Tries times" + numberOfTries);
   }

}

編集:

この問題を解決するための秘訣:

リソースの名前をすべて変更したら、プロジェクトをクリーンアップし(Project> Clean ..)、数秒待つと、R.javaファイルがホームに戻ります。R.javaファイルを取り戻すと、ほとんどのエラーが解消されますが、そうでない場合は、クラスのすべてのインポートで「import android.R」を確認し、存在する場合は削除してプロジェクトをクリーンアップしてください。

詳細ソリューションは次の場所に移動します:この記事に関する詳細ソリューション

4

2 に答える 2

2

R.java ファイルは、Android によって自動的に生成されます。次のことを試してください。

  1. Eclipse を使用している場合は、"project clean" を実行してファイルを再生成してください。
  2. R ファイルに関連しないすべてのエラーを修正してから、「プロジェクトのクリーン」オプションを再試行してください。他のエラー (たとえば、xml レイアウト ファイル) は、プロジェクトのクリーンを介して R ファイルの新しいビルドを「停止」する可能性があります。
  3. プロジェクトが Android プロジェクトであり、クラスパスに android.jar ファイルがあることを確認してください。
于 2011-08-01T09:03:37.170 に答える
0

Android の最小 SDK バージョンが正しく構成されていない可能性があります。

プロジェクトに追加した Android のバージョンと、作成した AVD のバージョンを確認してください。

API レベル 7 [Android 2.1] に AVD を追加した場合は、次のように project.properties ファイルのエントリと一致するかどうかをクロス チェックします。

target=android-7
于 2012-03-17T03:25:22.367 に答える