一个action就是一个字符串,什么名字都无所谓。
自定义action的目的,就是界面A发起一个包含action的Intent,界面b响应这个action,进而启动起来。
这样的好处就是只要保持B的intent不变,即使B的类名改变,也不需要更改A的代码,尤其是A、B是2个应用程序的时候。
步骤如下:
1、A开启一个intent,包含一个action。
- case MENU_ACTION_FILE:
- intent.setAction("selectfile");
- intent.putExtra("target","file");
- startActivityForResult(intent,MENU_ACTION_FILE);
- break;
2、在B的AndroidManifest中响应这个action
- <activity android:name="MyFileList">
- <intent-filter>
- <action android:name="selectfile"/>
- <category android:name="android.intent.category.DEFAULT" />
- </intent-filter>
- </activity>
开始忘了加<category android:name="android.intent.category.DEFAULT" />,搞了老半天,每次都是报
Activitynotfoundexception。
现在终于搞定了。