編輯:關於Android編程
今天本來想寫一篇關於百度地圖定位SDK的文章的,無奈根據官網提供的例子編寫的程序始終無法運行,所以這個計劃只能落空。那麼今天要與大家分享的是Camera,即照相機。隨著硬件能力的大幅提升,手機上各種依托硬件的應用層出不群。在所有硬件中,照相機功能無疑是最常用的功能。那麼,我們今天就來做一個簡單的照相機吧。這個例子在很多場景中都會用到,比如在QQ空間裡拍照然後分享給好友,在有道雲筆記裡拍照完成圖像筆記的編輯等。在Android中,我們有兩種方式來開發照相機的應用。一種是采用Camera類,進行原生應用的開發,這種開發方式涉及的技術相對較多,開發難度相對較大;一種是調用系統內置的照相機應用,然後和我們自己的應用完成交互,這種方式顯然簡單地多。所以,今天我們在這裡選擇後一種方式,即調用系統內置的照相機來完成拍照。通過對Android的了解,我們知道,所有對於系統內置的應用都可以通過意圖的方式來實現,如發短信、發郵件、打電話等常用的操作。這告訴兩了我們一個道理,很多時候,當系統已經有這樣的功能時,最簡單的方式就是去調用它,而不是去開發它,除非你想做一個完全和系統不一樣的應用。
首先,布局代碼如下:
在這裡我們使用一個ImageView來顯示我們拍攝的照片,使用一個Button來觸發拍照的事件。後台代碼如下:
package com.Camera.camera; import android.os.Bundle; import android.provider.MediaStore; import android.app.Activity; import android.content.Intent; import android.graphics.Bitmap; import android.util.Log; import android.view.Menu; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; import android.widget.ImageView; import android.widget.Toast; public class MainActivity extends Activity { ImageView iv; Button BtnPlay; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); iv=(ImageView)findViewById(R.id.ImageView); BtnPlay=(Button)findViewById(R.id.BtnPlay); BtnPlay.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { try { Intent intent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE); startActivityForResult(intent, 0); } catch(Exception e) { Log.e("Exception", e.getMessage()); } } }); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if(requestCode==0) { super.onActivityResult(requestCode, resultCode, data); Bundle Extras = data.getExtras(); Bitmap mBitmap = (Bitmap)Extras.get("data"); iv.setImageBitmap(mBitmap); } else { Toast.makeText(this, "您沒有拍攝照片!", Toast.LENGTH_SHORT).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.main, menu); return true; } }
首先我們為Button注冊Click事件,在Click事件中我們定義了一個調用拍照意圖的Intent,然後調用這個Intent。因為這裡需要返回一個值,即我們拍的照片,所以徐雅使用startActivityForResult()方法。於此同時,我們覆蓋Activity的onActivityResult()方法,來處理返回值,即根據返回的值來生成一個Bitmap以填充ImageView,完成整個拍照的過程。運行結果如圖(哈哈,V粉不解釋,拍得太難看就不上傳了)
今天的內容就是這樣啦,有時間再研究下百度定位SDK的例子。話說百度寫的例子我還真看不懂啊,那個語音識別的SDK就搞的得雲裡霧裡的,唉,繼續努力吧!
0x00我們首先講一個webView這個方法的作用:webView.getSettings().setAllowFileAccessFromFileURLs(false)
最近做一個項目類似於QQ空間,做到照片浏覽的功能,對於QQ空間中點擊圖片放大至全屏,感覺效果很贊,於是也做了個類似的效果。如下。 packag
Android Vitamio 庫Vitamio是一個android和ios上基於FFmpeg的開源項目。Vitamio為我們提供了一個清潔、簡單、全面、真
這個問題之前一直困擾我,我的需求就是點擊對話框外面和按返回鍵對話框不會消失,按返回鍵還好解決,攔截下返回鍵就OK了。但是點擊外面不好解決。之前有人說模態對話框,我看了一會