写android的程序,经常要用到intent,语法很简单,但我之前总是得不到预期结果。程序一个错都没有,就连警告都没有,可一运行就出现这么一句话:很抱歉,**已停止运行。弄得我百思不得其解,今天终于好好看了一下,找到问题的根源。
这是配置问题。
比如,我要从NO5Activity跳到NO50Activity,下面的代码没错
public void onClick(View v) {
Intent intent=new Intent();
intent.setClass(No50Activity.this,No5Activity.class);
startActivity(intent);
finish();
}
但运行就出问题了,这就需要配置Androidmainfest.xml文件
未配置前是这样的:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.no2"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="4" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<uses-permission
android:name="android.permission.CALL_PHONE">
</uses-permission>
<activity
android:label="@string/app_name"
android:name=".No5Activity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
所谓配置,其实就是再加一个Activity,配置后是这样
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="my.no5"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk android:minSdkVersion="3" />
<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity
android:label="@string/app_name"
android:name=".No5Activity" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".No50Activity" />
</application>
</manifest>
红色部分就是加的内容,程序运行不了也就是少了这句话。