eatwhatApp開發實戰(十四)

  以前咱們就輸入框EditText作了優化,而此次,咱們爲app添加撥打電話的功能。

  首先是佈局,將activity_shop_info.xml中對應的電話那一欄進行從新設計:

  <RelativeLayout 
	    android:id="@+id/ll_tel"
	    android:layout_width="wrap_content"
	    android:layout_height="wrap_content"
	    android:layout_below="@id/ll_name">
		<TextView
		    android:id="@+id/tv_text_shop_tel"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:text="電話:"
		    android:textSize="20sp"/>   
		<TextView
		    android:id="@+id/tv_shop_tel"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:layout_toRightOf="@id/tv_text_shop_tel"
		    android:text="10086"
		    android:textSize="20sp"/> 
		 <Button
		    android:id="@+id/btn_call"
		    android:layout_width="wrap_content"
		    android:layout_height="wrap_content"
		    android:layout_alignParentRight="true"
		    android:onClick="call"
		    android:text="撥打"
		    android:layout_alignBaseline="@id/tv_shop_tel"
		    android:textSize="20sp"/>
	</RelativeLayout>

  app中實現撥打電話的功能,在AndroidManifest.xml中必須添加權限:

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

  以後就能夠寫對應的實現代碼:

    public void call(View v) {
		
		// 獲取電話號碼欄中的號碼
		String num = tel_num.getText().toString();
		// 若是輸入不爲空建立打電話的Intent
		if (num.trim().length() != 0) {
			Intent phoneIntent = new Intent("android.intent.action.CALL",
					Uri.parse("tel:" + num));
			// 啓動
			startActivity(phoneIntent);
		}else {
			// 不然Toast提示一下
			Toast.makeText(ShopInfoActivity.this, "號碼無效,或爲空", Toast.LENGTH_LONG)
					.show();
		}
	}

  這樣,便完成了撥打電話的功能。

相關文章
相關標籤/搜索