2014-03-28 73 views
0

我試圖做一臺老虎機,一切都很好,直到我添加了一些將計算投注的代碼。我有$ 1和一個$ 5的賭注按鈕,當按鈕被點擊時它會自動從玩家銀行擲出。不知何故,我的應用程序崩潰時,我運行它。這是代碼。如果我錯過了某些東西,有人能指出我嗎?這將是非常有益的。謝謝。我每次運行此代碼時,我的應用程序崩潰

ViewFlipper slotOne, slotTwo, slotThree, spinStop; 
Button spin, stop, betOne, betFive; 
TextView userBet, bankRoll; 

final int BETONE = 1, BETFIVE = 5; 
int uBet = 100; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_game_main); 
    this.initSpin(); 
    this.initStop(); 

    this.placeBet1(); 
    //this.placeBet5(); 
} 



private void placeBet1() { 
    betOne = (Button) findViewById (R.id.bet1); 
    userBet = (TextView) findViewById (R.id.userBet); 
    bankRoll = (TextView) findViewById (R.id.bankroll); 
    betOne.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 
      uBet = uBet - BETONE; 
      userBet.setText("Your Bet: " + BETONE); 
      bankRoll.setText(uBet); 

     } 
    }); 

} 

這裏是我的logcat:

03-27 18:17:46.268: I/Process(22207): Sending signal. PID: 22207 SIG: 9 
03-27 18:17:51.598: D/dalvikvm(22449): GC_FOR_ALLOC freed 92K, 7% free 9481K/10179K, paused 27ms, total 27ms 
03-27 18:17:51.603: I/dalvikvm-heap(22449): Grow heap (frag case) to 10.382MB for 600016-byte allocation 
03-27 18:17:51.633: D/dalvikvm(22449): GC_CONCURRENT freed 1K, 7% free 10066K/10823K, paused 12ms+2ms, total 33ms 
03-27 18:17:51.748: D/libEGL(22449): loaded /system/lib/egl/libEGL_mali.so 
03-27 18:17:51.758: D/libEGL(22449): loaded /system/lib/egl/libGLESv1_CM_mali.so 
03-27 18:17:51.758: D/libEGL(22449): loaded /system/lib/egl/libGLESv2_mali.so 
03-27 18:17:51.763: D/(22449): Device driver API match 
03-27 18:17:51.763: D/(22449): Device driver API version: 10 
03-27 18:17:51.763: D/(22449): User space API version: 10 
03-27 18:17:51.763: D/(22449): mali: REVISION=Linux-r2p4-02rel0 BUILD_DATE=Thu Oct 25  08:43:05 KST 2012 
03-27 18:17:51.783: D/OpenGLRenderer(22449): Enabling debug mode 0 
03-27 18:17:58.928: D/dalvikvm(22449): GC_FOR_ALLOC freed 618K, 13% free 9686K/11015K, paused 17ms, total 17ms 
03-27 18:17:58.928: I/dalvikvm-heap(22449): Grow heap (frag case) to 10.583MB for 600016-byte allocation 
03-27 18:17:58.973: D/dalvikvm(22449): GC_CONCURRENT freed <1K, 7% free 10272K/11015K, paused 12ms+1ms, total 42ms 
03-27 18:17:59.058: D/dalvikvm(22449): GC_CONCURRENT freed 779K, 13% free 10024K/11399K, paused 12ms+11ms, total 35ms 
03-27 18:18:00.148: W/ResourceType(22449): No package identifier when getting value for resource number 0x00000063 
03-27 18:18:00.148: D/AndroidRuntime(22449): Shutting down VM 
03-27 18:18:00.148: W/dalvikvm(22449): threadid=1: thread exiting with uncaught exception (group=0x416122a0) 
03-27 18:18:00.168: E/AndroidRuntime(22449): FATAL EXCEPTION: main 
03-27 18:18:00.168: E/AndroidRuntime(22449): android.content.res.Resources$NotFoundException: String resource ID #0x63 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.content.res.Resources.getText(Resources.java:513) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.widget.TextView.setText(TextView.java:3849) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at com.ics136leeward.slotmachine.GameMainActivity$1.onClick(GameMainActivity.java:41) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.view.View.performClick(View.java:4261) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.view.View$PerformClick.run(View.java:17414) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.os.Handler.handleCallback(Handler.java:615) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.os.Handler.dispatchMessage(Handler.java:92) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.os.Looper.loop(Looper.java:137) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at android.app.ActivityThread.main(ActivityThread.java:4938) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at java.lang.reflect.Method.invokeNative(Native Method) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at java.lang.reflect.Method.invoke(Method.java:511) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805) 
03-27 18:18:00.168: E/AndroidRuntime(22449): at dalvik.system.NativeStart.main(Native Method) 
+4

日誌貓請! ! –

+0

initstop和initspin是幹什麼用的。 –

+3

您可以嘗試將bankRoll.setText(uBet)更改爲bankRoll.setText(「」+ uBet)或類似的東西嗎? setText方法需要一個字符串。也請發佈您的logcat,以便我們可以幫助您更好地回答您的問題:) – SalGad

回答

1

試試這個..

更改代碼這bankRoll.setText(uBet);bankRoll.setText(""+uBet);像下面ClickListener

betOne.setOnClickListener(new View.OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     uBet = uBet - BETONE; 
     userBet.setText("Your Bet: " + BETONE); 
     bankRoll.setText(""+uBet); 

    } 
}); 
+0

謝謝@Hariharan,它現在正在工作。 :) – nosound101

+0

我想象的原因是,如果你傳遞一個數字,系統會嘗試使用它作爲資源ID。並且沒有99(0x63)的ID的資源。 – cHao

相關問題