2011-04-14 62 views
0

我的應用程序最近開始拋出一個「暫停(異常RuntimeException)」我想我可能會意外地弄亂了一些代碼,但我不能精確定位問題。Suspended(異常RuntimeException)當我點擊一個按鈕,打開一個新的佈局新班級

這是我的日誌聊天,當我點擊早餐按鈕。

04-14 17:54:15.941:ERROR/AndroidRuntime(6099):致命異常:主
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):了java.lang.RuntimeException:無法啓動活動ComponentInfo {com.merch.dine/com.merch.dine.myMenu}:java.lang.ClassCastException:android.widget.ImageButton
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2737)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2753)
04-14 17:54:15.941:ERROR/AndroidRuntime(60 99):在android.app.ActivityThread.access $ 2500(ActivityThread.java:129)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在android.app.ActivityThread $ H.handleMessage(ActivityThread。 java:2107)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):at android.os.Handler.dispatchMessage(Handler.java:99)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在android.os.Looper.loop(Looper.java:143)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在android.app.ActivityThread.main(ActivityThread.java :4701)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):at java.lang.reflect.Method.invokeNative(Native Method)
04-14 17:54:15.941:ERROR/And roidRuntime(6099):在java.lang.reflect.Method.invoke(Method.java:521)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:868)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在dalvik.system.NativeStart.main(本機方法)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):由:JAVA .lang.ClassCastException:android.widget.ImageButton
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):at com.merch.dine.myMenu.onCreate(myMenu.java:36)
04-1 4 17:54:15.941:ERROR/AndroidRuntime(6099):在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-14 17:54:15.941:ERROR/AndroidRuntime(6099):在機器人。 app.ActivityThread.performLaunchActivity(ActivityThread.java:2701)

這裏是螺紋

螺紋[< 1>主](暫停(例外的RuntimeException))
ActivityThread上的調試信息。 performLaunchActivity(ActivityThread $ ActivityRecord,意圖)行:2659
ActivityThread.handleLaunchActivity(ActivityThread $ ActivityRecord,意圖)線:2753
ActivityThread.access $ 2500(ActivityThread,ActivityThread $ ActivityRecord,意圖)線:129
ActivityThread $ H.handleMessage(消息)線:2107
ActivityThread $ H (處理器)。DispatchMessage函數(消息)線:99
Looper.loop()線:143
ActivityThread.main(字符串[])線:4701
Method.invokeNative(對象,對象[],類,第[],類,整型,布爾)行:不可用[本機方法]
Method.invoke(對象,對象...)線:521
ZygoteInit $ MethodAndArgsCaller.run()線:868
ZygoteInit.main(字符串[]) line:626
NativeStart.main(String [])line:not available [native method]

這裏是導致飛機墜毀

public class EnglishOne extends Activity { 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     //FIXED LANDSCAPE 
     setRequestedOrientation (ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 

     //FULLSCREEN 
     requestWindowFeature(Window.FEATURE_NO_TITLE); 
     getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 

     setContentView(R.layout.english1); 

     //button breakfast 
     Button bBreakfast1 = (Button) findViewById(R.id.breakfast1); 

     bBreakfast1.setOnClickListener(new View.OnClickListener() { 
      public void onClick(View V) { 
       startActivity(new Intent("com.merch.dine.BREAKFASTONE")); 
      } 
     }); 
    } 
} 

這是一個按鈕應該用空白XML佈局

public class breakfastone extends Activity { 

    public void OnCreate(Bundle breakfastone) { 
     super.onCreate(breakfastone); 
     setContentView(R.layout.breakfast1); 
    } 
} 

回答

0

沒關係啓動活動按鈕我的Java文件。我通過使用XML來設置onClick函數,然後對我的java文件進行編碼以調用函數時更改內容視圖,從而規避了我的問題。

Xml按鈕特定的代碼;

<ImageButton android:id="@+id/button1" 
    android:layout_height="160dip" 
    android:layout_width="285dip" 
    android:onClick="switchLayer" 
    android:src="@drawable/icon" 
    android:layout_x="285dip" 
    android:layout_y="481dip"> 
</ImageButton> 

Java按鈕特定代碼;

public void switchLayer(View view) { 
    // Button1 switches layout 
    setContentView(R.layout.layer2); 
} 
相關問題