2011-12-10 116 views
0

我正在閱讀一本適合初學者的安卓手冊,而在接下來的章節中,我遇到了一個問題。本章是關於意圖的教學。我現在有2個佈局:main.xml和digital_clock.xml。並在AndroidManifest我有這些行的代碼:使用意圖來切換活動

<application 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" > 
    <activity 
     android:label="@string/app_name" 
     android:name=".Chapter11Activity" > 

     <intent-filter > 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
     <activity 
     android:name=".DigitalClockActivity" > 
     </activity> 
</application> 

另外我有對應於佈局兩個活動類:

Chapter11Activity: 進口android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button;

public class Chapter11Activity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Button a2 = (Button)findViewById(R.id.button1); 
     a2.setOnClickListener(new OnClickListener() { 
      public void onClick(View v) { 
       Intent myIntent = new Intent(v.getContext(), DigitalClockActivity.class); 
       startActivityForResult(myIntent, 0); 
      } 
     }); 
    } 
} 

DigitalClockActivity:

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; 

public class DigitalClockActivity extends Activity { 

    public void OnCreate(Bundle sIS) { 
     super.onCreate(sIS); 
     setContentView(R.layout.digital_clock); 
     Button a1 = (Button) findViewById(R.id.button01); 
     a1.setOnClickListener(new OnClickListener() { 
      public void onClick(View v) { 
       Intent replyIntent = new Intent(); 
       setResult(RESULT_OK, replyIntent); 
       finish(); 
      } 
     }); 

    } 
} 

當我我的手機上運行應用程序,並切換到第二個活動就顯示什麼都沒有。我在AndroidManifest中定義了錯誤嗎?該應用程序看起來非常簡單,但它不起作用。我已經檢查過,以確保我沒有輸入任何錯誤。是因爲我正在運行Android 2.3.3手機並使用1.5 sdk,並且某些東西不向後兼容?任何答案讚賞!

〜安德魯

回答

3

在第二個活動方法的名稱應該是onCreate沒有OnCreate

爲了防止在方法將來使用@Override這樣的錯別字,你要重寫:

@Override 
public void OnCreate(Bundle sIS) { 
    // code here 
} 

然後,如果你犯了一個錯字,編譯器會告訴它。

+1

謝謝,我真的看過。我從來沒有見過。 –