Android圖片(視訊)選擇器:android-media-picker

2015-07-17    分類:Android UI 元件、開源軟體、手機/移動開發1人評論發表於2015-07-17

本文由碼農網 – 小峰原創,轉載請看清文末的轉載要求,歡迎參與我們的付費投稿計劃

android-media-picker是一個基於Android的圖片(視訊)選擇器,功能非常全,UI也很漂亮。圖片載入使用的是universalimageloader。

使用說明:

該庫還有相應的文章:Android Media Picker Library To Pick Photos And Videos  ,內包含視訊演示。文字內容大部分和下面的介紹差不多。

第一步: 新增 LIBRARY

把MediaPicker 庫新增到專案中。

在AndroidManifest.xml 中註冊MediaPickerActivity。

<activity
    android:name="vn.tungdx.mediapicker.activities.MediaPickerActivity"
    android:screenOrientation="portrait"
android:theme="@style/MediaPickerTheme" />

第二步: 呼叫ACTIVITY以選擇圖片或者視訊

使用 MediaPickerActivity.java 中的方法來選擇圖片活著視訊。

MediaPickerActivity.open(Activity activity, int requestCode,
                            MediaOptions options);

MediaPickerActivity.open(Activity activity, int requestCode);

MediaPickerActivity.open(Fragment fragment, int requestCode,
                            MediaOptions options);

MediaPickerActivity.open(Fragment fragment, int requestCode);

使用帶有裁剪功能的activity去選擇圖片。

private static final int REQUEST_MEDIA = 100;
MediaOptions.Builder builder = new MediaOptions.Builder();
MediaOptions options = builder.setIsCropped(true).setFixAspectRatio(true).build();
MediaPickerActivity.open(this, REQUEST_MEDIA, options);

使用activity選擇多個視訊。

private static final int REQUEST_MEDIA = 100;
MediaOptions.Builder builder = new MediaOptions.Builder();
MediaOptions options = builder.selectVideo().canSelectMultiVideo(true).build();
MediaPickerActivity.open(this, REQUEST_MEDIA, options);

要了解更多的選項,請檢視 MediaOptions.Builder.java類。

第三步: 接收圖片或者視訊

如下重寫onActivityResult(int requestCode, int resultCode, Intent data)

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        if (requestCode == REQUEST_MEDIA) {
            if (resultCode == RESULT_OK) {
               List<MediaItem> mediaSelectedList = MediaPickerActivity
                        .getMediaItemSelected(data);               
            }
        }
    }
MediaItem.getUriCropped()
MediaItem.getUriOrigin()
MediaItem.getPathOrigin(Context context)
MediaItem.getPathCropped(Context context)

更多詳情,可以檢視MediaItem.java 類。

本文連結:http://www.codeceo.com/article/android-media-picker.html
本文作者:碼農網 – 小峰
原創作品,轉載必須在正文中標註並保留原文連結和作者等資訊。]

相關文章