2012-01-18 164 views
0

這裏怎麼回事?出於某種原因,我想將xml佈局從一個java類切換到另一個java類,第二個類實際上有正確的代碼來加載它(我相信我會在這裏發佈),它應該在調用時加載,而是在我的手機,我不斷收到一個強制關閉,我使用的意圖,如果你看看這裏切換xml佈局?

我只試過一個按鈕現在

  import android.app.Activity; 
     import android.content.Intent; 
     import android.os.Bundle; 
    import android.view.View; 
    import android.view.View.OnClickListener; 
     import android.widget.Button; 
     import android.widget.LinearLayout; 

      public class mainMenu extends Activity { 
private static final int ACTIVITY_CREATE=0; 

@Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); //This is calling the layout in the main.xml file if I   change the main.xml file name then I would 
     LinearLayout lin = (LinearLayout)findViewById(R.id.mainLayout); 
    lin.setBackgroundResource(R.drawable.letterlist); 
    Button free = (Button)findViewById(R.id.freeDraw); 



    Button trace = (Button)findViewById(R.id.trace); 
    Button sent = (Button)findViewById(R.id.sentence); 




free.setOnClickListener(new OnClickListener() { 
public void onClick (View v) { 
    Intent myIntent = new Intent(v.getContext(), freeDraw.class); 
    startActivityForResult(myIntent, 0); 
} 


}); 

} 
     } 

接下來將是我試圖打開它太代碼,他們都使用我已經檢查過的相同包。

 public class freeDraw extends Activity implements OnGesturePerformedListener { 
private EditText words; //calling my edit text and naming it to variable words 
private static final String TAG = "Gesture Revealer"; 
GestureLibrary gestureLib = null; //calling my gesture library 


@Override 
     public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.free); //This is calling the layout in trace.xml for now 

任何xml文件都沒有錯誤。所以我的問題是,我在做什麼意圖錯誤? (因爲我相信這是問題

但基本上我想要做的就是從主菜單(第一個代碼)開關當按鈕被按到自由繪製模式(第二個代碼)時,這帶來了一個全新的佈局

繼承人的Android運行時錯誤我在logcat的

      01-18 03:50:48.432: E/AndroidRuntime(16938): FATAL EXCEPTION: main 
          01-18 03:50:48.432: E/AndroidRuntime(16938): android.content.ActivityNotFoundException: Unable to find explicit activity class {com.better.work.learning.letters.and.more.awesome/com.better.work.learning.letters.and.more.awesome.freeDraw}; have you declared this activity in your AndroidManifest.xml? 
         01-18 03:50:48.432: E/AndroidRuntime(16938): at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1541) 

3月一日至18日得到:50:48.432:E/AndroidRuntime(16938):在android.app.Instrumentation.execStartActivity(儀表。在Android.app.Activity.startActivityForResult(Activity.java:2941) 3月1日至18日:50:48.432:E/AndroidRuntime(16938):在com.better.work.learning.letters.and.more.awesome.mainMenu $ 1.onClick(mainMenu.java:41) 3月1日至18日:50:48.432:E/AndroidRuntime(16938):at android.view.View.performClick(View.java:2532) 01-18 03:50:48.432:E/AndroidRuntime(16938):at android.view.View $ PerformClick.run(View.java:9293) 01-18 03:50:48.432:E/AndroidRuntime(16938):在android.os.Handler.handleCallback(Handler.java:587) 01-18 03:50 :48.432:E/AndroidRuntime(16938):at android.os.Handler.dispatchMessage(Handler.java:92) 01-18 03:50:48.432:E/AndroidRuntime(16938):at android.os.Looper.loop (Looper.java:143) 三月1日至18日:50:48.432:E/AndroidRuntime(16938):在android.app.ActivityThread.main(ActivityThread.java:4263) 三月1日至18日:50:48.432:電子/ AndroidRuntime(16 938):在java.lang.reflect.Method.invokeNative(本機方法) 3月1日至十八日:50:48.432:E/AndroidRuntime(16938):在java.lang.reflect.Method.invoke(Method.java:507 ) 三月一日至18日:50:48.432:E/AndroidRuntime(16938):在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:839) 三月一日至18日:50:48.432:電子/ AndroidRuntime(16938):在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 三月1日至18日:50:48.432:E/AndroidRuntime(16938):在dalvik.system.NativeStart.main (本機方法)

+0

當強制關閉時,請從logcat發佈堆棧跟蹤。 – 2012-01-18 08:33:04

+0

R.id.freeDraw是你的main.xml中的這個按鈕嗎? – 2012-01-18 08:35:52

+0

@Rich Talcik,請嘗試logcat,因爲click事件中的代碼應該工作。 – netadictos 2012-01-18 08:37:07

回答

0

三月1日至18日:50:48.432:E/AndroidRuntime(16938):致命異常:主 三月1日至18日:50:48.432:E/AndroidRuntime(16938):android.content.ActivityNotFoundException :無法找到顯式活動類{com.better.work.learning.letters。 and.more.awesome/com.better.work.learning.letters.and.more.awesome.freeDraw};你有沒有在你的AndroidManifest.xml中聲明這個活動? 3月1日至18日:50:48.432:E/AndroidRuntime(16938):在android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1541)

這logcat的說明你還沒有宣佈mainfest文件你的第二個活動