1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/zfproject-Android_Muti_Img_Select

Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

MultiImageSelector

Инструмент выбора изображений для устройств на платформе Android. Поддерживает одиночный выбор и множественный выбор.

Документация на китайском

Пример работы

Пример1 Выбор1 Выбор2 Выбор3


Запуск демонстрационного приложения

./gradlew installDebug

Быстрый старт

  • Шаг 0 Добавьте модуль multi-image-selector в качестве зависимости вашего проекта.

  • Шаг 1 Объявите разрешение android.permission.READ_EXTERNAL_STORAGE в вашем файле AndroidManifest.xml. Объявите MultiImageSelectorActivity в вашем файле AndroidManifest.xml.

<activity
    android:configChanges="orientation|screenSize"
    android:name="me.nereo.multi_image_selector.MultiImageSelectorActivity" />
  • Шаг 2 Вызовите активность выбора изображений в вашем коде, например:
Intent intent = new Intent(mContext, MultiImageSelectorActivity.class);

// показывать ли камеру
intent.putExtra(MultiImageSelectorActivity.EXTRA_SHOW_CAMERA, true);

// максимальное количество выбираемых изображений
intent.putExtra(MultiImageSelectorActivity.EXTRA_SELECT_COUNT, 9);

// режим выбора (MultiImageSelectorActivity.MODE_SINGLE или MultiImageSelectorActivity.MODE_MULTI)
intent.putExtra(MultiImageSelectorActivity.EXTRA_SELECT_MODE, MultiImageSelectorActivity.MODE_MULTI);

startActivityForResult(intent, REQUEST_IMAGE);
```* Шаг 3
Получите результат в методе `onActivityResult`. Например:
```java
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == REQUEST_IMAGE) {
        if (resultCode == RESULT_OK) {
            // Получите список путей выбранных изображений
            List<String> пути = data.getStringArrayListExtra(MultiImageSelectorActivity.EXTRA_RESULT);
            // Выполните свою логику ...
        }
    }
}
```* Шаг 4
Больше шагов не требуется, просто наслаждайтесь. :)

-------------------###Стратегия пользовательской активности
* Настройте свою собственную активность
```java
class CustomerActivity extends Activity implements MultiImageSelectorFragment.Callback{
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		// логика пользователя здесь...
		Bundle bundle = new Bundle();
        bundle.putInt(MultiImageSelectorFragment.EXTRA_SELECT_COUNT, mDefaultCount);
        bundle.putInt(MultiImageSelectorFragment.EXTRA_SELECT_MODE, mode);
        bundle.putBoolean(MultiImageSelectorFragment.EXTRA_SHOW_CAMERA, isShow);
        // Добавьте фрагмент в вашу активность
        getSupportFragmentManager().beginTransaction()
                .add(R.id.image_grid, Fragment.instantiate(this, MultiImageSelectorFragment.class.getName(), bundle))
                .commit();
	}

	@Override
	public void onSingleImageSelected(String path) {
        // Когда режим выбора установлен на MODE_SINGLE, этот метод получает результат от фрагмента
    }
}
    @Override
    public void onImageSelected(String путь) {
        // Вы можете указать поведение вашего ActionBar здесь
    }

    @Override
    public void onImageUnselected(String путь) {
        // Вы можете указать поведение вашего ActionBar здесь
    }

    @Override
    public void onCameraShot(File imageFile) {
        // Когда пользователь делает снимок с камеры, этот метод будет вызван.
    }
}
  • Ознакомьтесь с MultiImageSelectorActivity.java

###История изменений

  • 2015-4-9
    1. Исправлено. При установке EXTRA_SHOW_CAMERA в true, событие нажатия первой сетки было сломано.
    2. Добавлено. Поддержка начального списка выбранных изображений.* 2015-4-16
    3. Исправлено. Поломка при повороте устройства. (Проблема от @Leminity)
    4. Исправлено. Ошибка позиции PopupListView. (Проблема от @Slock)
    5. Изменено. Кнопка быстрого доступа демонстрационного приложения.
    6. Изменено. Файл README.

Благодарность

  • square-picasso мощная библиотека для загрузки и кэширования изображений для Android

Лицензия

The MIT License (MIT)

Copyright (c) 2015 Nereo

Разрешается бесплатно использовать, копировать, модифицировать, объединять, публиковать, распространять, передавать по лицензии и продавать копии Программы, а также позволять лицам, которым Программа была предоставлена, делать то же самое, при условии выполнения следующих условий:

Указанное выше уведомление об авторском праве и данное разрешение должны присутствовать во всех копиях или значительных частях Программы.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Реализовать множественный выбор как в WeChat. Поддерживать два режима: одиночный и множественный выбор. Развернуть Свернуть
MIT
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/zfproject-Android_Muti_Img_Select.git
git@api.gitlife.ru:oschina-mirror/zfproject-Android_Muti_Img_Select.git
oschina-mirror
zfproject-Android_Muti_Img_Select
zfproject-Android_Muti_Img_Select
master