Android基础——Intent的Action和Data属性

布局文件

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity">

    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="打电话"
        />
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="发短信"
        />

</LinearLayout>

java调用

package com.example.myintentii;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Button button1 = (Button)findViewById(R.id.button1);
        Button button2 = (Button)findViewById(R.id.button2);
        //设置监听器对象
        button1.setOnClickListener(listener);
        button2.setOnClickListener(listener);
    }

    View.OnClickListener listener = new View.OnClickListener() {
        @Override//点了一下按钮的监听器
        public void onClick(View v) {
            Intent intent = new Intent();
            Button button = (Button)v;
            switch (button.getId()){
                case R.id.button1:  //打电话
                    intent.setAction(intent.ACTION_DIAL);//设置打电话ACTION
                    intent.setData(Uri.parse("tel:00000000"));//设置电话号
                    startActivity(intent);
                    break;
                case R.id.button2:  //发短信
                    intent.setAction(intent.ACTION_SENDTO);
                    intent.setData(Uri.parse("smsto:11111111"));
                    intent.putExtra("sms_body","Hello world");//编辑短信内容
                    startActivity(intent);
                    break;
            }
        }
    };
}

原文地址:https://www.cnblogs.com/zsben991126/p/12236963.html

时间: 2024-08-01 14:56:23

Android基础——Intent的Action和Data属性的相关文章

android之Intent的七大属性

Intent用于封装程序的"调用意图".两个Activity之间,可以把需要交换的数据,封装成Bundle对象,然后使用Intent对象,携带数据到另一个Activity中.实现两个Activity的数据交换. Intent还是各种应用程序组件之间通信的重要媒介.启动Activity.Service.BroadcastReceiver,都需要使用Intent. Intent还有一个好处,如果应用程序只是想启动具有某种特征的组件,并不想和某个具体的组件耦合,则可以通过在int ent -

android基础知识13:AndroidManifest.xml文件解析

1.重要性 AndroidManifest.xml是Android应用程序中最重要的文件之一.它是Android程序的全局配置文件,是每个 android程序中必须的文件.它位于我们开发的应用程序的根目录下,描述了package中的全局数据,包括package中暴露的组件 (activities, services, 等等),以及他们各自的实现类,各种能被处理的数据和启动位置等重要信息. 因此,该文件提供了Android系统所需要的关于该应用程序的必要信息,即在该应用程序的任何代码运行之前系统所

android笔记--Intent和IntentFilter详解

Intent用于启动Activity, Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介. 使用Intent启动组件的优势1, Intent为组件的启动提供了一致的编程模型. 无论想要启动的组件是Activity, Service, 还是BroadcastReceiver, 都可以使用Intent封装启动的意图.2, 在某些时候, 应用程序只是想启动具有某种特征的组件, 并不想和某个特定的组件耦合. 使用Intent可以方便的达到这种高层次解耦的

html5中data属性,dataset与jquery中的date()

首先是“你必须知道的28个HTML5特征.窍门和技术”里对date属性的分析: 我们现在可以很正式地让所有的HTML元素支持自定义属性.然而,以前,我们可能会这样: <h1 id=someId customAttribute=value>你好,我是以前的自定义属性<h1> …校验器会小题大做!但是现在,只要我们以”data”为前缀定义我们的自定义属性,盗版属性立马变成正牌的了.如果你发现你曾经把一个重要的数据附加在诸如class的属性上,可能为了JavaScript之用,那么,本属

Intent的Component,Action和Category属性详解-android学习之旅(五十)

Component属性 代码示例 public class MainActivity extends Activity{ @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); findViewById(R.id.btnIntent).setOnClickListener(ne

Android基础之Intent 和 Intent 过滤器

Intent是一个消息传递对象,您可以使用它从其他应用组件请求操作.尽管 Intent 可以通过多种方式促进组件之间的通信,但其基本用例主要包括以下三个: 1.启动 Activity: Activity 表示应用中的一个屏幕.通过将 Intent 传递给 startActivity(),您可以启动新的 Activity 实例.Intent 描述了要启动的 Activity,并携带了任何必要的数据.如果您希望在 Activity 完成后收到结果,请调用 startActivityForResult

Android总结篇系列:Activity Intent Flags及Task相关属性

同上文一样,本文主要引用自网上现有博文,并加上一些自己的理解,在此感谢原作者. 原文地址: http://blog.csdn.net/liuhe688/article/details/6761337 -------------------------------------------------------------------------- 今天我们来讲一下Activity的task相关内容. 上次我们讲到Activity的四种启动模式的时候,已经了解到一些关于task的技术,今天我再向大

Android基础知识:Day06 Activity生命周期和Intent用法

Day06 Activity生命周期和Intent用法 一.Activity的跳转 1. 创建第二个Activity 需要在清单文件中为其配置一个activity标签 标签中如果带有这个子节点,则会在系统中多创建一个快捷图标 <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.cate

Android基础学习第三篇—Intent的用法

写在前面的话: 1. 最近在自学Android,也是边看书边写一些Demo,由于知识点越来越多,脑子越来越记不清楚,所以打算写成读书笔记,供以后查看,也算是把自己学到所理解的东西写出来,献丑,如有不对的地方,希望大家给与指正. 2. 由于类似于读书笔记,可能格式神马的会比较随(hen)意(chou),大家看着受不了,可以使劲吐槽. *************************************我只是分割线***************************************