Skip to content

adrian-koczen/react-native-images-picker

Repository files navigation

Preview

Nagranie.z.ekranu.2024-04-18.o.14.10.50.mov

Installation

Expo

Update app.json

"plugins": ["react-native-images-picker/plugin"]

Bare react native

Update AndroidManifest.xml

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

Update InfoPlist

NSPhotoLibraryUsageDescription: 'Access required ...'

Component

import { useState } from "react"
import { Pressable, View, Text } from 'react-native'
import { ImagesPicker } from 'react-native-images-picker/component'

const App = () => {
    const [isOpen, setIsOpen] = useState(false)

    return (
        <View style={{ flex: 1 }}>
            <Pressable onPress={() => setIsOpen(true)}>
                <Text>
                    Open Images Picker
                </Text>
            </Pressable>
            <ImagesPicker
                isOpen={isOpen}
                onClose={setIsOpen}
            />
        </View>
    )
}

Functions

Request permissions

import { requestPermissions } from 'react-native-images-picker'

const requestPermissionsFunction = async () => {
    await requestPermissions()
}

Fetch assets with pagination

import { fetchAssets, Asset } from 'react-native-images-picker'

const App = () => {
    const [assets, setAssets] = useState<Array<Asset>>([])

    const fetchImages = async (page: number, offset: number) => {
        const fetchedAssets = await fetchAssets({
            offset,
            page
        })

        setAssets(prevValue => [...prevValue, ...fetchedAssets])
    }

    ...
}

Asset

Key Type Value
path string image path on device
height string image height
width string image width

About

React native images picker for iOS and Android

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published