Групповой блок с заголовком как Флажок

Не пытайтесь найти URI в файловой системе, потому что поискать информацию в базе данных очень медленно.

Вы можете получить растровое изображение из URI, передавая поток ввода фабрике, как вы передаете файл фабрике:

InputStream is = getContentResolver().openInputStream(uri);
Bitmap bitmap = BitmapFactory.decodeStream(is);
is.close();
6
задан Bharani 26 June 2009 в 08:19
поделиться

3 ответа

Есть несколько вещей, которые вы можете попробовать, в зависимости от того, насколько верным вы хотите придерживаться своей идеи и сколько работы вы готовы приложить для этого:

Простой метод

Используйте обычное групповое поле, а затем внутри него сделайте первый элемент флажком. Это просто выполнить, но вы теряете цель иметь флажок в качестве заголовка.

Метод фанки-рисования 1

Используйте обычное групповое поле, затем в месте, где вы знаете, что заголовок должен идти, поместите ваш флажок. Вам придется выполнить некоторые хитрые вычисления, чтобы заставить его хорошо вписаться и хорошо рисовать без мерцания.

Метод фанки-рисования 2

Используйте некоторую форму суперкласса или подкласса / подкласс в рамке группы. Вы можете переопределить обработчик WM_PAINT, чтобы он рисовал только рамку для группового поля. Установите обычный флажок в том месте, где, как вы знаете, должно быть название. Это должно работать лучше, потому что у вас будет больше контроля над рисунком, но, вероятно, будет сложно сделать это правильно. По моему опыту, создание подклассов представляет меньший риск для реализации, чем подклассы.

5
ответ дан 10 December 2019 в 00:43
поделиться

Вы используете редактор диалоговых окон? Если да, поставьте групповой ящик. Далее, поверх него ставим галочку над строкой группового поля. Отредактируйте ресурс, чтобы установить Z-порядок, или сделайте это в коде. Вы хотите, чтобы флажок был наверху поля группы. Добавьте обработчик для флажка и включите / отключите элементы управления в зависимости от состояния флажка.

4
ответ дан 10 December 2019 в 00:43
поделиться

Несколько лет назад я написал программу под названием CGroupCheck, и она доступна на CodeProject: http://www.codeproject.com/KB/buttons/ groupcheck123.aspx

1
ответ дан 10 December 2019 в 00:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: