我正在尝试做一些相当简单的事情,只是从我的主要活动开始一个新的活动。这是代码:
public class mainActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent i = new Intent(mainActivity.this, testActivity.class);
startService(i);
}
}
///////////////// next file /////////////////
public class testActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.test);
Toast.makeText(this, "testActivity started", Toast.LENGTH_SHORT).show();
}
}
/////////////////显示部分///////////////////
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".mainActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".testActivity" />
但是我从来没有看到testActivity的Toast - 是什么给出的?
答案 0 :(得分:14)
您想使用startActivity
代替startService
Intent i = new Intent(mainActivity.this, testActivity.class);
startActivity(i);
答案 1 :(得分:4)
要开始活动,您应使用startActivity()
代替startService()
。
您还必须确保在您的Android清单中列出了testActivity。
答案 2 :(得分:3)
如果活动仍在后台运行,则会调用该活动,只会调用onResume()
,而不是onCreate();
检查生命周期:http://developer.android.com/guide/topics/fundamentals/activities.html#Lifecycle