Выбор изображения для обоев - PullRequest
0 голосов
/ 05 сентября 2010

Я пишу живые обои и мне нужна помощь.Мои обои создадут эффект поверх другого изображения или существующих обоев (не других живых обоев), которые пользователь выбирает в «Настройках ...».

Моя проблема заключается в следующем: я не могу найти способ отобразить статические обои или изображения на телефоне.Я видел несколько примеров получения изображений с камеры, но не обоев.

Любая помощь будет оценена.

1 Ответ

0 голосов
/ 05 сентября 2010

Если это поможет, я написал FileFilter, который вернет список папок с изображениями. Вы просто берете Файл, представляющий каталог (я использую его для Environment.getExternalStorageDirectory ()), используете .listFiles (filterForImageFolders), и он возвращает File [] с каталогами, которые содержат изображения. Затем вы можете использовать этот список, чтобы заполнить свой список изображений в ваших настройках:

FileFilter filterForImageFolders = new FileFilter()
    {           
        public boolean accept(File folder)
        {
            try
            {
                //Checking only directories, since we are checking for files within
                //a directory
                if(folder.isDirectory())
                {
                    File[] listOfFiles = folder.listFiles();

                    if (listOfFiles == null) return false;

                    //For each file in the directory...
                    for (File file : listOfFiles)
                    {                           
                        //Check if the extension is one of the supported filetypes                          
                        for (String ext : imageExtensions)
                        {
                            if (file.getName().endsWith("." + ext)) return true;
                        }
                    }                       
                }
                return false;
            }
            catch (SecurityException e)
            {
                Log.v("debug", "Access Denied");
                return false;
            }
        }
    };

(ImageExtensions - это строка [], содержащая "png", "bmp", "jpg", "jpeg")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...