TedPicker

介绍:

一个图片选择控件。

运行效果:

使用说明:

Gradle

我们使用cwac-camera来完成拍照,这个库是从 jitpack.io中获得的。

repositories {
    maven { url "https://repo.commonsware.com.s3.amazonaws.com" }
    maven { url "https://jitpack.io" }
}
dependencies {
      compile 'com.github.ParkSangGwon:TedPicker:v1.0.10'
}

权限

添加Camera和外部存储权限。

<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" android:required="false" />
<uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

Activity

在AndroidManifest.xml里声明Activity

<activity android:name="com.gun0912.tedpicker.ImagePickerActivity" 
                      android:screenOrientation="portrait"
/>

必须这样使用 AppCompat theme l。ImagePickerActivity使用没有actionbar的toolbar。

    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>

How to use

1. Start Activity

    private static final int INTENT_REQUEST_GET_IMAGES = 13;
    private void getImages() {
        Intent intent  = new Intent(this, ImagePickerActivity.class);
        startActivityForResult(intent,INTENT_REQUEST_GET_IMAGES);
    }

2. Receive Activity

如果你完成了图片的选择,你将收到图片路径(Uri类型)的数组 。

    @Override
    protected void onActivityResult(int requestCode, int resuleCode, Intent intent) {
        super.onActivityResult(requestCode, resuleCode, intent);
            if (requestCode == INTENT_REQUEST_GET_IMAGES && resuleCode == Activity.RESULT_OK ) {
                ArrayList<Uri>  image_uris = intent.getParcelableArrayListExtra(ImagePickerActivity.EXTRA_IMAGE_URIS);
                //do something
            }
    }

自定义

You can change color, drawable, height ...你可以改变颜色,drawable,高度。。。

在调用startActivityForResult()之前,把Config instance设置到ImagePickerActivity

例子

        Config config = new Config();
        config.setCameraHeight(R.dimen.app_camera_height);
        config.setToolbarTitleRes(R.string.custom_title);
        config.setSelectionMin(2);
        config.setSelectionLimit(4);
        config.setSelectedBottomHeight(R.dimen.bottom_height);
        ImagePickerActivity.setConfig(config);
        Intent intent = new Intent(this, ImagePickerActivity.class);
        startActivityForResult(intent, INTENT_REQUEST_GET_IMAGES);

函数

  • setCameraHeight(R.dimen.xxx) (default: 250dp)

  • setSelectedBottomHeight(R.dimen.xxx) (default: 90dp)

  • setSelectedBottomColor(R.color.xxx) (default: R.attr.colorAccent)

  • setToolbarTitleRes(R.string.xxx) (default: Choice Image / 사진선택)

  • setTabBackgroundColor(R.color.xxx) (default: #fff)

  • setTabSelectionIndicatorColor(R.color.xxx) (default: R.attr.colorPrimary)

  • setSelectionLimit(int)

  • setSelectionMin(int)

  • setCameraBtnImage(R.drawable.xxx)

  • setCameraBtnBackground(R.drawable.xxx)

  • setSelectedCloseImage(R.drawable.xxx)

  • setSavedDirectoryName(R.string.xxx) (default: Pictures)

  • setFlashOn(boolean) (default: false)

感谢

blob.png

已下载
0