"http://schemas.android.com/apk/res/andr_安卓电话应用开发">
当前位置:   article > 正文

使用Android开发打电话程序_安卓电话应用开发

安卓电话应用开发

 今天开发了我的第一个Android程序--打电话。

        因为是小程序所以我按照的设计步骤是 1.设计界面。2.设计Activity。3.业务层代码。逐步实现。

[xml]  view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  
  3.     android:orientation="vertical"  
  4.     android:layout_width="fill_parent"  
  5.     android:layout_height="fill_parent"  
  6.     >  
  7. <TextView    
  8.     android:layout_width="fill_parent"   
  9.     android:layout_height="wrap_content"   
  10.     android:text="@string/hello"  
  11.     />  
  12. <EditText    
  13.     android:layout_width="fill_parent"   
  14.     android:layout_height="wrap_content"   
  15.     android:id="@+id/telphone"  
  16.     />  
  17.  <Button   
  18.     android:layout_width="wrap_content"   
  19.     android:layout_height="wrap_content"   
  20.     android:text="@string/btn"  
  21.     android:id="@+id/btnButton"  
  22.     />  
  23. </LinearLayout>  
  这个就是layout中的设计界面在Android中界面由xml文件生成。
其中需要注意的是: "android:id="@+id/btnButton "其中id就是按钮的id,定义的btnButton会自动在R.java中生成。
android:text= "@string/hello"   中的hello是在项目res/values下的strings.xml中定义的string,内容自己添加。
2. Activity中的代码如下:
  1. package com.example.phonecall;
  2. import android.content.Intent;
  3. import android.net.Uri;
  4. import android.os.Bundle;
  5. import android.view.View;
  6. import android.widget.Button;
  7. import android.widget.EditText;
  8. import android.widget.Toast;
  9. import android.app.Activity;
  10. import android.view.Menu;
  11. public class HelloWorld extends Activity {
  12. EditText text;
  13. Button btn;
  14. @Override
  15. protected void onCreate(Bundle savedInstanceState) {
  16. super.onCreate(savedInstanceState);
  17. setContentView(R.layout.activity_main);
  18. //根据id查找用户拨打的号码
  19. text = (EditText)findViewById(R.id.telphone);
  20. //根据id查找按钮
  21. btn = (Button)findViewById(R.id.btnButton);
  22. //将拨打按钮绑定到事件上
  23. btn.setOnClickListener(new View.OnClickListener() {
  24. @Override
  25. public void onClick(View v) {
  26. //定义Intent对象
  27. Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+text.getText().toString()));
  28. //启动Activity传输Intent
  29. HelloWorld.this.startActivity(intent);
  30. }
  31. });
  32. }
  33. @Override
  34. public boolean onCreateOptionsMenu(Menu menu) {
  35. // Inflate the menu; this adds items to the action bar if it is present.
  36. getMenuInflater().inflate(R.menu.main, menu);
  37. return true;
  38. }
  39. }
这里需要特别提醒的是通过id查找按钮或文本框时是到R.java文件中查找相应的内部类中的常量

3. strings.xml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <string name="app_name">PhoneCall</string>
  4. <string name="action_settings">Settings</string>
  5. <string name="hello_world">Hello world!</string>
  6. <string name="hello">拨出号码:</string>
  7. <string name="btn">拨打</string>
  8. </resources>

4. 添加打电话权限AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.phonecall"
    android:versionCode="1"
    android:versionName="1.0" >


    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />
    <uses-permission android:name="android.permission.CALL_PHONE"></uses-permission>


    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.phonecall.HelloWorld"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />


                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>


</manifest>
本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号