1.Intent明确的intent,直接以类名制定要启动哪一个Activity,通常用
与启动自己额的activity,
2.隐试的intent 所谓隐试,就是只有intent中指出想要进行的操作,例如
拨号,显示,编辑,搜索,以及,数据,例如电话号码,Email,网址等
让系统帮助我们找出合适的Activity
StartActivity 明确Intent的启动意图
例如
Intent Intent=new Intent();
intent.SetClass(this,Act2.class);
startActivity();intent 夹带数据,传递给新的Activity
例如:
getIntent 和getXXXExtra();
在新的Activity 可用getIntent ;来获取传入的Intent,然后利用
getxxxExtra(数据名称,默认值) 方法读取数据。
putExtra 放置数据
在新的Activity结束时将数据放回
步骤如下:
*
1.在主Activity 中改用startActivityForResult 来启动Activity:
startActivityForResult(intent it,int 标识符,任意整形数据);
2.新的Activity早结束前使用SetResult()返回执行的结果数据
setResult (int 结果码,intent it);
在主activity中加入OnActivityResult()方法接收返回的数据
onactivityResult(int 标识符,int 结果码,intent it);
- intent启动程序的方式
1.隐试intent 可以启动的动作有很多
Action_View 显示数据
Action_Edit 编辑数据
Action_Pick 挑选数据等等
uses-permission android:name=”android.permission.READ_EXTERNAL_STORAGE”读取手机文件权限
uses-permission android:name=”android.permission.CALL_PHONE”拨打电话权限
JAVA代码:主要片段
>* Intent intent=new Intent();
/*Uri data=Uri.fromFile(new File("sdcard/download/a.jpg"));
Uri.Builder builder =data.buildUpon();
builder.appendQueryParameter("height", "500").appendQueryParameter("wigth", "500").fragment("center");
data=builder.build();
//intent.setAction(MainActivity.CRAS);
intent .setDataAndType(data, "image/*");
intent.setAction(Intent.ACTION_VIEW);*/
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("tel:800"));
startActivity(intent);
JAVA跳转二页面的代码:
/ intent = getIntent();
data = intent.getData();
// String query=data.getQuery();
// String fragme=data.getFragment();
int width=Integer.parseInt(data.getQueryParameter(“wigth”));
int highet=Integer.parseInt(data.getQueryParameter(“height”));
fragment = data.getFragment();
ImageView imageView=(ImageView) findViewById(R.id.imv);
//imageView.getLayoutParams().width=width;
//imageView.getLayoutParams().height=highet;
imageView.setImageURI(data);
清单文件的配置:
android:name=".Second1Activity"
android:label="@string/title_activity_second1" >
android:mimeType="image/*"
android:name="org.crazyit.intent.action.CRAZYIT_ACTION"
android:name="android.intent.action.VIEW"
android:name="android.intent.category.DEFAULT"
发送电子邮件
<uses-permission android:name="android.permission.INTERNET" />权限
Intent i = new Intent(Intent.ACTION_SEND);
i.setType("text/plain");
i.putExtra(Intent.EXTRA_EMAIL, new String[] { "contact@mycompany.com" });
i.putExtra(android.content.Intent.EXTRA_SUBJECT, "[Contact us]");
startActivity(i);
intent.setData(Uri.parse("sms:0999-456789?body=你好"));发送短信: