Intent 使用Action 和Data 属性启动系统activity

来源:互联网 发布:容易猝死的职业知乎 编辑:程序博客网 时间:2024/06/07 03:15

实例 使用 Action 和 data 属性启动系统activity

package com.test.actiondata;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.view.View;import android.widget.Button;import com.test.intentdemo.R;/** * 使用 Action data 属性启动系统 Activity */public class ActionDataActivity extends AppCompatActivity {    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_action_data);        Button btn = (Button) findViewById(R.id.btn);        if (btn != null) {            btn.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View v) {                    Intent intent = new Intent();                    String data = "http://www.cctv.com";                    //根据指定的字符串解析出 Uri 对象                    Uri uri = Uri.parse(data);                    //为 Intent 设置Action 属性                    intent.setAction(Intent.ACTION_VIEW);                    intent.setData(uri);                    //intent.setData(Uri.parse("http://www.cctv.com"));                    startActivity(intent);                }            });            Button edit = (Button) findViewById(R.id.edit);            if (edit != null) {                edit.setOnClickListener(new View.OnClickListener() {                    @Override                    public void onClick(View v) {                        Intent intent = new Intent();                        //为 intent 设置 action属性(动作 为 编辑)                        intent.setAction(Intent.ACTION_EDIT);                        String data = "content://com.android.contacts/contacts/1";                        Uri uri = Uri.parse(data);                        intent.setData(uri);                        startActivity(intent);                    }                });                Button call = (Button) findViewById(R.id.call);                if (call != null) {                    call.setOnClickListener(new View.OnClickListener() {                        @Override                        public void onClick(View v) {                            Intent intent = new Intent();                            intent.setAction(Intent.ACTION_DIAL);                            String data = "tel:13800138000";                            Uri uri = Uri.parse(data);                            //设置属性                            intent.setData(uri);                            startActivity(intent);                        }                    });                }            }        }    }}

单击第一个按钮 会打开 www.cctv.com的 界面,
单击第2个按钮会看到启动编辑标识为1 的联系人界面.
单击第3个按钮 将看到程序向 该号码拨号的界面

0 0
原创粉丝点击