Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
imcavs™
-21 / 7 / 1
Регистрация: 19.02.2012
Сообщений: 173
#1

Кастомизация прогресс-бара - Программирование Android

12.05.2016, 10:41. Просмотров 335. Ответов 3
Метки нет (Все метки)

Добрый день. Каким образом засунуть в прогресс, вместо колора изображение? Код прилагаю:
XML
1
2
3
4
5
6
7
8
9
10
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@android:id/background">
        <color android:color="#2ecc71"></color>
    </item>
    <item android:id="@android:id/progress">
        <clip>
            <color android:color="#27ae60"></color>
        </clip>
    </item>
</layer-list>
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.05.2016, 10:41
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Кастомизация прогресс-бара (Программирование Android):

Уменьшение прогресс бара до нулевого значения каждую секунду
Добрый вечер, господа. Каким образом можно выполнить эту задачу?

Кастомизация SeekBar?
Добрый день! нужно кастомизировать seekbar, знаю (видел) много примеров, но...

Кастомизация ListView
Добрый день. Перерыл пол инета но так и не нашел нормальный мануал как можно...

Кастомизация ListView
Добрый день. Создаю прокручиваемый список, в каждом поле четыре строки,...

Кастомизация Spinner
Пытаюсь изменить внешний вид spinner Сделал для него стиль вида &lt;style...

Кастомизация списков
В инете есть множество примеров изменение внешнего вида ListView с помощью...

3
_Night_Scream_
77 / 75 / 9
Регистрация: 08.08.2013
Сообщений: 621
12.05.2016, 13:06 #2
Лучший ответ Сообщение было отмечено imcavs™ как решение

Решение

Так можете ставить всё что хотите, код для seek bar.
Java
1
this.setProgressDrawable(generateProgressDrawable(Color.BLUE, Color.TRANSPARENT, false));
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
protected Drawable generateProgressDrawable(int progress, int background, boolean turn){
 
       
        RectShape rect = new RectShape();
 
        GradientDrawable shape = new GradientDrawable();
        shape.setShape(GradientDrawable.RECTANGLE);
        shape.setCornerRadius(10);
        shape.setColor(progress);
        shape.setStroke(15, Color.TRANSPARENT);
 
        GradientDrawable shapeBack = new GradientDrawable();
        shapeBack.setShape(GradientDrawable.RECTANGLE);
        shapeBack.setCornerRadius(10);
        shapeBack.setColor(background);
        shapeBack.setStroke(3, Color.BLACK);
 
        ShapeDrawable secondaryProgressDrawable = new ShapeDrawable(rect);
        secondaryProgressDrawable.getPaint().setColor(Color.TRANSPARENT);
 
        ClipDrawable progressClip;
        ClipDrawable secondaryProgressClip;
        if (!turn) {
            progressClip = new ClipDrawable(shape, Gravity.LEFT, ClipDrawable.HORIZONTAL);
            secondaryProgressClip = new ClipDrawable(secondaryProgressDrawable,Gravity.LEFT,ClipDrawable.HORIZONTAL);
        }else{
            progressClip = new ClipDrawable(shape, Gravity.BOTTOM,ClipDrawable.VERTICAL);
            secondaryProgressClip = new ClipDrawable(secondaryProgressDrawable,Gravity.BOTTOM,ClipDrawable.VERTICAL);
        }
 
        LayerDrawable layer = new LayerDrawable(new Drawable[]{shapeBack, secondaryProgressClip,progressClip});
        layer.setId(0, android.R.id.background);
        layer.setId(1, android.R.id.secondaryProgress);
        layer.setId(2, android.R.id.progress);
 
        return layer;
    }
0
imcavs™
-21 / 7 / 1
Регистрация: 19.02.2012
Сообщений: 173
13.05.2016, 13:57  [ТС] #3
Спасибо за код, буду пробовать. В какой строке вы подгружаете изображение? Или у вас только кастомные цвета используются
0
_Night_Scream_
77 / 75 / 9
Регистрация: 08.08.2013
Сообщений: 621
13.05.2016, 14:22 #4
imcavs™, смысл в том, что весь прогресс разделен на layer
background
secondaryProgress
progress
В них вы и ставьте то, что вам нужно.
Я для цвета создавал округленный shape, вы можете картинку ставить и т.п.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.05.2016, 14:22
Привет! Вот еще темы с решениями:

Кастомизация ListView
http://imglink.ru/pictures/15-06-14/3d97212a44f93f016eb14cfbf868d023.jpg Как...

Кастомизация табов в actionbar
необходимо чтобы табы выглядели примерно как на приложенном фото, как это можно...

Кастомизация заголовока окна
Лайауты имеют белый фон и тему по-умолчанию. На версии 4.1 заголовки окон не...

Приложение для суши бара
Доброго времени суток. В общем недавно обратился клиент с довольно специфичной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru