2013-07-10 29 views
0

我在同一個項目中有兩個活動如下。 如何從ServicesDemo啓動MainActivity?我使用了Intent,但它不啓動MainActivity。Android - 我如何啓動一個新課程及其活動?

Mainfest我只有一個:

<activity 
    android:name=".ServicesDemo" android:label="@string/app_name"> 

當項目啓動它開始這一個:

public class ServicesDemo extends Activity implements OnClickListener { 
    public void onClick(View src) { 
    switch (src.getId()) { 
     case R.id.buttonpicture: 
     Intent i = new Intent(getBaseContext(), MainActivity.class); 
     startActivity(i); 
     break; 
    } 
    } 

} 

ServiceDemo需要也推出這樣的:

public class MainActivity extends Activity implements OnClickListener { 
} 

編輯:

主要巨星:多種活性上市

<activity 
    android:name=".ServicesDemo" android:label="@string/app_name">   
    <intent-filter> 
    <action android:name="android.intent.action.MAIN" />   
    <category android:name="android.intent.category.HOME" />  
    <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 

</activity> 

<activity android:name=".MainActivity" android:label="@string/app_name"> 
</activity> 

調用活動這是需要:

Intent i = new Intent(getBaseContext(), MainActivity.class); 
startActivity(i); 
+1

「我已經使用的意圖,但沒有啓動MainActivity」 - 沒有什麼明顯的錯誤比使用其他代碼'getBaseContext()'而不是'this'。確保'MainActivity'在清單中被列爲''。 – CommonsWare

+0

如何用'ServiceDemo.class'替換'getBaseContext()'?那樣有用嗎? – Nima

+0

請確保您的代碼真正符合您的案例條件,並且您已達到startActivity-line。 – snrlx

回答

1

添加要發射到清單中的活動:

<activity android:name=".MainActivity" android:label="@string/app_name" /> 

然後你可以用意圖啓動它:

startActivity(new Intent(this, MainActivity.class)); 
startActivity(new Intent("your.package.MainActivity")); 
+0

注意:我需要同時啓動1st(服務演示)的多個活動2nd(我的活動) – YumYumYum

1
Intent i = new Intent(this, MainActivity.class); 
startActivity(i); 
finish(); 

,那麼你必須聲明你的活動清單

<activity 
    android:name=".MainActivity" android:label="@string/app_name"> 
相關問題