2011-03-13 52 views
0

我正在嘗試創建一個android程序。該程序是這樣工作的,用戶輸入他想扔的骰子的數量並且程序執行它。我的花括號都在這個地方,我不會添加或刪除它們。我用來控制輸入驗證的聲明不起作用。我的程序不會允許我調用不同類的方法

你能幫我打開大括號並修正我的聲明嗎?

這裏怎麼我的程序看起來像

http://img232.imageshack.us/i/alphascreen.png/

package com.warhammerdicerrolleralpha;

import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.EditText; import android.widget.ImageView; import android.widget.TextView;

public class myMain extends Activity {

EditText enternumberofdice; ImageView i = new ImageView(this); { i.setAdjustViewBounds(true); } private int myFaceValue; /** * Called when the activity is first created. * * @return */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public int roll() { int val = (int) (6 * Math.random() + 1); // Range 1-6 setValue(val); return val; } int myNum = 0; { try { myNum = Integer.parseInt(enternumberofdice.getText().toString()); } catch(NumberFormatException nfe) { enternumberofdice.setText("Does not work"); } } public int getValue() { return myFaceValue; } public void setValue(int myFaceValue) { this.myFaceValue = myFaceValue; } { switch (myFaceValue) { case 5: i.setImageResource(R.drawable.dicefive); break; case 1: i.setImageResource(R.drawable.diceone); break; case 3: i.setImageResource(R.drawable.dicethree); break; case 2: i.setImageResource(R.drawable.dicetwo); break; case 4: i.setImageResource(R.drawable.dicefour); break; case 6: i.setImageResource(R.drawable.dicesix); break; } Button buttonGenerate = (Button)findViewById(R.id.button1); final TextView textGenerateNumber = (TextView)findViewById(R.id.text4); enternumberofdice = (EditText) findViewById(R.id.enternumberofdice); buttonGenerate.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { while (myNum > 0) { // TODO Auto-generated method stub textGenerateNumber.setText(String.valueOf(enternumberofdice)); roll(); myNum --; } } }); }

}

+0

有沒有人有建議來解決我的大括號的位置。我不知道我的花括號有什麼問題。然而月蝕說我的大括號是錯誤的。 – lonesarah 2011-03-13 02:49:55

+2

您完成了[Java教程](http://download.oracle.com/javase/tutorial/)嗎?我可能弄錯了,但看起來你錯過了Java的一些基礎知識。 – Ishtar 2011-03-13 02:56:33

+0

如果Eclipse使用大括號標記錯誤,那麼它們一定不能正確配對。你有沒有仔細觀察,確保你在正確的地方正確地關閉了每個打開的支架? – 2011-03-13 02:56:54

回答

0

一些問題,我注意到:

1)它看起來對我來說,你的onCreate()方法沒有按沒有右括號。

2)刪除此行後面的} this.myFaceValue = myFaceValue;並添加}代替// NOT WORKING行。

+0

通過eclipse獲得一些標記請求。 – lonesarah 2011-03-13 03:00:04

+0

我編輯了我的文章,並且右括號不再是我的問題。 Eclipse在我的while語句中不讓我使用>運算符。 – lonesarah 2011-03-13 03:26:39

1

找出丟失的大括號應該去的地方的一個簡單的「技巧」是使用Eclipse的「正確縮進」功能。縮進將爲您提供有關您需要插入或移除支架的位置的線索。


'>'運算符的問題是enternumberofdice不是原始數字類型。它是EditText;即文本輸入小部件。

提示:您必須從窗口小部件中提取「值」作爲文本(即字符串),然後將文本轉換爲原始數字。

+0

是否是日蝕正確的縮進功能? – lonesarah 2011-03-13 03:07:45

+0

我正在修復我的花括號,但是當我做一個更改時,我又收到了一個錯誤。 – lonesarah 2011-03-13 03:10:42

+0

1)看菜單。 (我沒有Eclipse的副本,我現在可以運行)。 2)繼續下去,直到你修好它們。 – 2011-03-13 03:34:11

相關問題