CallAndSms

来源:互联网 发布:python usage 编辑:程序博客网 时间:2024/06/03 13:36

电话号码 短信内容(tv)

打电话 发短信(btn)

--------------------------

1、权限

activity_main.xml

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="wrap_content"    android:layout_height="match_parent"    android:paddingBottom="@dimen/activity_vertical_margin"    android:paddingLeft="@dimen/activity_horizontal_margin"    android:paddingRight="@dimen/activity_horizontal_margin"    android:paddingTop="@dimen/activity_vertical_margin"    tools:context="com.atguigu.helloworld.MainActivity" >    <TextView         android:id="@+id/tv_phone"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="请输入电话号码"/>        <EditText         android:id="@+id/et_phone"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_below = "@id/tv_phone"/>        <Button         android:id="@+id/button_phone"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:layout_below="@id/et_phone"        android:text="拨打"/></RelativeLayout>

MainActivity.java

package com.atguigu.helloworld;import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// 加载视图setContentView(R.layout.activity_main);// 获取button对象Button buttonPhone = (Button) findViewById(R.id.button_phone);// 为button设置点击事件buttonPhone.setOnClickListener(new myOnclick());}class myOnclick implements OnClickListener {@Overridepublic void onClick(View v) {// 获取号码视图EditText et_phone = (EditText) findViewById(R.id.et_phone);// 获取号码String number = et_phone.getText().toString();//设置带行为的intent对象Intent intent = new Intent(Intent.ACTION_CALL);// 设置数据intent.setData(Uri.parse("tel:" + number));// 启动窗口startActivity(intent);}}}

------------------------------------------------------我是分割线----------------------------------------------------------------

1、权限问题--配置文件--Strings.xml 省略

activity_main.xml

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="fill_parent"    android:layout_height="fill_parent"    android:orientation="vertical" >    <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="@string/tv_message" />        <EditText            android:id="@+id/et_main_sms"            android:layout_width="match_parent"            android:layout_height="wrap_content"/>    </LinearLayout>         <LinearLayout        android:layout_width="match_parent"        android:layout_height="wrap_content" >        <TextView            android:layout_width="wrap_content"            android:layout_height="wrap_content"            android:text="@string/tv_number" />        <EditText            android:id="@+id/et_main_phone"            android:layout_width="match_parent"            android:layout_height="wrap_content"/>    </LinearLayout>     <LinearLayout         android:layout_width="match_parent"         android:layout_height="wrap_content" >         <Button             android:id="@+id/btn_main_call"             android:layout_width="wrap_content"             android:layout_height="wrap_content"             android:text="@string/btn_call" />         <Button             android:id="@+id/btn_main_send"             android:layout_width="wrap_content"             android:layout_height="wrap_content"             android:text="@string/btn_send" />     </LinearLayout></LinearLayout>

MainActivity.java

package com.atguigu.helloworld;import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.telephony.SmsManager;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;public class MainActivity extends Activity {private EditText et_main_phone;private EditText et_main_sms;private Button btn_main_call;private Button btn_main_send;private OnClickListener onClickListener = new OnClickListener() {@Overridepublic void onClick(View v) {if (v == btn_main_call) {// 创建意图Intent intent = new Intent();// 设置意图intent.setAction(Intent.ACTION_DIAL);// 获取号码String number = et_main_phone.getText().toString();// 号码编码Uri uri = Uri.parse("tel:" + number);// 设置号码intent.setData(uri);// 启动活动startActivity(intent);}if (v == btn_main_send) {// 创建意图Intent intent = new Intent();// 设置意图intent.setAction(Intent.ACTION_SENDTO);// 获取号码String number = et_main_phone.getText().toString();// 编码号码Uri uri = Uri.parse("smsto:" + number);// 设置号码intent.setData(uri);// 获取短信String sms = et_main_sms.getText().toString();// 携带数据intent.putExtra("sms_body", sms);// 启动活动startActivity(intent);}}};@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);//加载视图setContentView(R.layout.activity_main);//初始化Viewet_main_phone = (EditText) findViewById(R.id.et_main_phone);et_main_sms = (EditText) findViewById(R.id.et_main_sms);btn_main_call = (Button) findViewById(R.id.btn_main_call);btn_main_send = (Button) findViewById(R.id.btn_main_send);//添加点击监听btn_main_call.setOnClickListener(onClickListener);btn_main_send.setOnClickListener(onClickListener);/** * 输入电话号, 长按"打电话", 直接打电话(进入拨打界面) */btn_main_call.setOnLongClickListener(new View.OnLongClickListener() {@Overridepublic boolean onLongClick(View v) {//创建意图Intent intent = new Intent();//设置意图intent.setAction(Intent.ACTION_CALL);//获取号码String number = et_main_phone.getText().toString();//号码编码Uri uri = Uri.parse("tel:"+number);//设置号码intent.setData(uri);//启动活动return false;}});/** * 直接将短信发送给指定的手机号 */btn_main_send.setOnLongClickListener(new View.OnLongClickListener() {@Overridepublic boolean onLongClick(View v) {//创建一个短信发送器SmsManager smsManager = SmsManager.getDefault();//获取号码String number = et_main_phone.getText().toString();//获取短信String sms = et_main_sms.getText().toString();//发送短信smsManager.sendTextMessage(number, null, sms, null, null);return false;}});}}






0 0
原创粉丝点击