温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

电话拨号器 phone

发布时间:2020-08-01 19:11:13 来源:网络 阅读:245 作者:13397100439 栏目:移动开发

1.main.xml文件

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:orientation="vertical">


<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="@string/mobile"/>

<EditText

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:id="@+id/mobile"/>


<Button

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:text="@string/button"

android:id="@+id/button"/>"


</LinearLayout>

2.string.xml文件

<?xmlversion="1.0"encoding="utf-8"?>

<resources>


<stringname="hello">Hello World, PhoneActivity!</string>

<stringname="app_name">电话拨号器</string>

<stringname="mobile">请输入手机号</string>

<stringname="button">拨号</string>

</resources>

3.MainActivity 文件

package cn.itcast.phone;


import android.app.Activity;

import android.content.Intent;

import android.net.Uri;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.EditText;


public class PhoneActivity extends Activity {

private EditText mobileText;

   /** Called when the activity is first created. */

   @Override

   public void onCreate(Bundle savedInstanceState) {

       super.onCreate(savedInstanceState);

       setContentView(R.layout.main);

       mobileText = (EditText)findViewById(R.id.mobile);

       Button button = (Button)findViewById(R.id.button);

       button.setOnClickListener(new  ButtonClickListener());

   }

   public final class ButtonClickListener implements View.OnClickListener{


@Override

public void onClick(View v) {

// TODO Auto-generated method stub


String number = mobileText.getText().toString();

//创建意图构造器,根据数据,激活相应组件

//需要在配置文件中添加权限  <uses-permission android:name="android.permission.CALL_PHONE"/>

Intent intent = new Intent();

intent.setAction("android.intent.action.CALL");

//intent.addCategory("android.intent.category.DEFAULT");

intent.setData(Uri.parse("tel:"+number));

startActivity(intent);  //方法内部会自动为Intent添加类别android.intent.category.DEFAULT

}


   }

}

4.androidManifest 文件

<?xmlversion="1.0"encoding="utf-8"?>

<manifestxmlns:android="http://schemas.android.com/apk/res/android"

package="cn.itcast.phone"

android:versionCode="1"

android:versionName="1.0">


<uses-sdkandroid:minSdkVersion="8"/>


<application

android:icon="@drawable/ic_launcher"

android:label="@string/app_name">

<activity

android:label="@string/app_name"

android:name=".PhoneActivity">

<intent-filter>

<actionandroid:name="android.intent.action.MAIN"/>


<categoryandroid:name="android.intent.category.LAUNCHER"/>

</intent-filter>

</activity>

</application>

<uses-permissionandroid:name="android.permission.CALL_PHONE"/>

</manifest>

5.笔记

开发软件,首先开发布局

查看源码   使用权限

拨号器的实现

调试,Logcat

6.总结:

①开发时,应该有一定的条理。先布局,再逻辑控制。且文字最好放在string文 件中,方便维护

②下载相应源码,在开发时可以查阅

③对于监听器Listener

创建成匿名内部类:提高一点点程序读入速度,但降低可读性 不建议

创建内部类:很方便查看和其他对象调用

创建单独类:程序运行前加载类增多,启动时间延长

注:代码来自传智播客视频

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI