android開發(fā)基礎(chǔ)教程—打電話發(fā)短信
更新時間:2013年01月09日 17:33:58 作者:
打電話發(fā)短信的功能已經(jīng)離不開我們的生活了,記下來介紹打電話發(fā)短信的具體實(shí)現(xiàn)代碼,感興趣的朋友可以了解下
打電話發(fā)短信demo
public class MainActivity extends Activity {
EditText mPhoneNum,mMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPhoneNum=(EditText) findViewById(R.id.editText1);
mMessage=(EditText) findViewById(R.id.editText2);
}
public void onClick(View v) {
int id = v.getId();
String phoneNo = mPhoneNum.getText().toString();
//呼叫
if(id == R.id.button1){
Intent i = new Intent();
//設(shè)置動作名稱
i.setAction("android.intent.action.CALL");
//設(shè)置意圖數(shù)據(jù)
i.setData(Uri.parse("tel:" + phoneNo));
//開始活動
startActivity(i);
}
//發(fā)短信
else if(id == R.id.button2){
String smsContent = mMessage.getText().toString();
//得到默認(rèn)的短信管理器
SmsManager sm = SmsManager.getDefault();
sm.sendTextMessage(phoneNo, null, smsContent, null, null);
//提示用戶信息,臨時性通知
Toast toast = Toast.makeText(MainActivity.this, "發(fā)送完成", Toast.LENGTH_LONG);
toast.setGravity(Gravity.TOP|Gravity.RIGHT, 50, 100);
toast.show();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
布局代碼:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:onClick="onClick"
android:text="打電話" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button1"
android:onClick="onClick"
android:text="發(fā)短信" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/button1"
android:ems="10"
android:hint="請輸入電話號碼"
android:inputType="number" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="100dip"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText1"
android:hint="請輸入短信內(nèi)容"
android:ems="10" />
</RelativeLayout>
復(fù)制代碼 代碼如下:
public class MainActivity extends Activity {
EditText mPhoneNum,mMessage;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mPhoneNum=(EditText) findViewById(R.id.editText1);
mMessage=(EditText) findViewById(R.id.editText2);
}
public void onClick(View v) {
int id = v.getId();
String phoneNo = mPhoneNum.getText().toString();
//呼叫
if(id == R.id.button1){
Intent i = new Intent();
//設(shè)置動作名稱
i.setAction("android.intent.action.CALL");
//設(shè)置意圖數(shù)據(jù)
i.setData(Uri.parse("tel:" + phoneNo));
//開始活動
startActivity(i);
}
//發(fā)短信
else if(id == R.id.button2){
String smsContent = mMessage.getText().toString();
//得到默認(rèn)的短信管理器
SmsManager sm = SmsManager.getDefault();
sm.sendTextMessage(phoneNo, null, smsContent, null, null);
//提示用戶信息,臨時性通知
Toast toast = Toast.makeText(MainActivity.this, "發(fā)送完成", Toast.LENGTH_LONG);
toast.setGravity(Gravity.TOP|Gravity.RIGHT, 50, 100);
toast.show();
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
布局代碼:
復(fù)制代碼 代碼如下:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity" >
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_alignParentTop="true"
android:onClick="onClick"
android:text="打電話" />
<Button
android:id="@+id/button2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button1"
android:onClick="onClick"
android:text="發(fā)短信" />
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_below="@+id/button1"
android:ems="10"
android:hint="請輸入電話號碼"
android:inputType="number" >
<requestFocus />
</EditText>
<EditText
android:id="@+id/editText2"
android:layout_width="wrap_content"
android:layout_height="100dip"
android:layout_alignParentLeft="true"
android:layout_below="@+id/editText1"
android:hint="請輸入短信內(nèi)容"
android:ems="10" />
</RelativeLayout>
相關(guān)文章
如何使用SurfaceView實(shí)現(xiàn)魚兒游動動畫
這篇文章主要教大家如何使用SurfaceView實(shí)現(xiàn)魚兒游動動畫,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-04-04
淺析Android Dialog中setContentView()方法
本篇文章主要介紹了Android Dialog中setContentView()方法的相關(guān)知識。具有很好的參考價值。下面跟著小編一起來看下吧2017-05-05
Android編程實(shí)現(xiàn)隱藏狀態(tài)欄及測試Activity是否活動的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)隱藏狀態(tài)欄及測試Activity是否活動的方法,涉及Android界面布局設(shè)置及Activity狀態(tài)操作的相關(guān)技巧,需要的朋友可以參考下2016-10-10
Android App中讀取XML與JSON格式數(shù)據(jù)的基本方法示例
這篇文章主要介紹了Android App中讀取XML與JSON格式數(shù)據(jù)的基本方法示例,Android中自帶的JSONObject非常好用,需要的朋友可以參考下2016-03-03
Android XML設(shè)置屏幕方向(android:screenOrientation)詳解
這篇文章主要介紹了Android XML設(shè)置屏幕方向(android:screenOrientation)詳解的相關(guān)資料,需要的朋友可以參考下2017-04-04
Android開發(fā)之App widget用法實(shí)例分析
這篇文章主要介紹了Android開發(fā)之App widget用法,結(jié)合實(shí)例形式詳細(xì)分析了Android開發(fā)中使用App widget組件的具體步驟與相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下2016-06-06
Android中檢測當(dāng)前是否為主線程最可靠的解決方法
這篇文章主要介紹了Android中檢測當(dāng)前是否為主線程最可靠的解決方法,本文先是給出了最可靠的方法,然后給出了幾個實(shí)驗(yàn)例子,需要的朋友可以參考下2015-01-01

