Popularity
5.4
Growing
Activity
7.1
Growing
455
23
140

Description

Pix is a Whatsapp image picker replica. with this you can integrate a image picker just like whatsapp.

Programming language: Java
Tags: Media     CameraView     Camera     Photo     Image Processing     Gallery     Image Picker    

Pix (WhatsApp Style Image Picker) alternatives and similar packages

Based on the "Camera" category

Do you think we are missing an alternative of Pix (WhatsApp Style Image Picker) or a related project?

Add another 'Camera' Package

README

[Preview image](media/media-tilt.png)

Pix (WhatsApp Style Image and Video Picker)

Pix is a WhatsApp image picker replica. with this you can integrate a image picker just like WhatsApp.

Codacy Badge Pix Image Picker xscode

Upcoming

  1. Androidx Camera API integration
  2. Scoped storage to support Android Version 30
  3. Minimum SDK from 19 to 21

Demo

[](media/media.gif) [](media/one.png)

Usage

Options options = Options.init()
      .setRequestCode(100)                                           //Request code for activity results
      .setCount(3)                                                   //Number of images to restict selection count
      .setFrontfacing(false)                                         //Front Facing camera on start
      .setPreSelectedUrls(returnValue)                               //Pre selected Image Urls
      .setSpanCount(4)                                               //Span count for gallery min 1 & max 5
      .setExcludeVideos(false)                                       //Option to exclude videos
      .setVideoDurationLimitinSeconds(30)                            //Duration for video recording
      .setScreenOrientation(Options.SCREEN_ORIENTATION_PORTRAIT)     //Orientaion
      .setPath("/pix/images");                                       //Custom Path For media Storage

Pix.start(MainActivity.this, options);

or just use with minimal config

Pix.start(context, Options.init().setRequestCode(100));

for fetching only a single picture.

Use onActivityResult method to get results

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (resultCode == Activity.RESULT_OK && requestCode == RequestCode) {
        ArrayList<String> returnValue = data.getStringArrayListExtra(Pix.IMAGE_RESULTS);
    }
}

Customise

Theme

include these items in colors.xml with custom color codes

<resources>
    <color name="colorPrimaryPix">#075e54</color>
    <color name="colorPrimaryLightPix">#80075e54</color>
</resources>

Permission Handling

include onRequestPermissionsResult method in your Activity/Fragment for permission selection

@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
    switch (requestCode) {
        case PermUtil.REQUEST_CODE_ASK_MULTIPLE_PERMISSIONS: {
            // If request is cancelled, the result arrays are empty.
            if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
                Pix.start(context, Options.init().setRequestCode(100));
            } else {
                Toast.makeText(MainActivity.this, "Approve permissions to open Pix ImagePicker", Toast.LENGTH_LONG).show();
            }
            return;
        }
    }
}

Thanks to

Backers

Become a backer and help us sustain our activities! ๐Ÿ™๐Ÿ™

Download

Download or grab via Gradle:

include in app level build.gradle

repositories {
   maven { url 'https://jitpack.io' }
}
implementation  'com.fxn769:pix:1.5.4'

or Maven:

<dependency>
  <groupId>com.fxn769</groupId>
  <artifactId>pix</artifactId>
  <version>1.5.4</version>
  <type>pom</type>
</dependency>

or ivy:

<dependency org='com.fxn769' name='pix' rev='1.5.4'>
  <artifact name='pix' ext='pom' ></artifact>
</dependency>

Snapshots of the development version are available in [Sonatype's snapshots repository][snap].

Updates

Pix is using the new Material library with the legacy Support Library. You have to migrate to android.support to androidx in order to use com.google.android.material.

With Android Studio 3.2 and higher, you can quickly migrate an existing project to use AndroidX by selecting Refactor > Migrate to AndroidX from the menu bar.

For more details kindly refer Migrating to AndroidX

for Version 1.2.5 refer here

License

Licensed under the Apache License, Version 2.0, click here for the full license.

Author & support

This project was created by Akshay Sharma.

If you appreciate my work, consider buying me a cup of :coffee: to keep me recharged :metal: by PayPal

I love using my work and I'm available for contract work. Freelancing helps to maintain and keep my open source projects up to date!


*Note that all licence references and agreements mentioned in the Pix (WhatsApp Style Image Picker) README section above are relevant to that project's source code only.