0

私はAndroidアプリを作成していて、別のクラスファイル内のImageViewの移動を処理する必要のあるコードの作業を開始しました。これは(これまでのところ)正常に機能しているので、私の質問ではありません。これは私が持っているコードです:

public class BackgroundMovement extends MenuScreen {

    public float heightDp = 0;
    public float widthDp = 0;
    public int isShowing = 0;

    public void onCreate() {
        DisplayMetrics metrics = new DisplayMetrics();
        getWindowManager().getDefaultDisplay().getMetrics(metrics);
        heightDp = metrics.heightPixels / metrics.density;
        widthDp = metrics.widthPixels / metrics.density;
    }

    public Random rand = new Random();
    public int leftRight = rand.nextInt(2); [HERE]

    if (isShowing == 0) {

    }
}

あなたはおそらく私のコードの非常に奇妙な[ここ]に気づいたでしょう。Eclipseが最後に{、そして当然、}を追加することを望んでいるので、私はそれを入れました。だから私の質問は:なぜですか?何もわからないので、本当に直したいです...

4

2 に答える 2

2

クラスのトップレベルで、メソッドまたはinitブロックの外側にベアコントロールステートメントがあります。

if (isShowing == 0) {}

これは有効なJava構文ではなく、Eclipseが文句を言っています。しかし、もっと重要なことは、コンパイラーもその行について文句を言うでしょう。そのままでは、クラスはコンパイルされません。

于 2012-07-13T19:11:36.033 に答える
0

メソッド内にある必要があります

if (isShowing == 0) {

}
于 2012-07-13T19:11:51.063 に答える