Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/3: Рейтинг темы: голосов - 3, средняя оценка - 5.00
Levabala
0 / 0 / 2
Регистрация: 28.06.2013
Сообщений: 18
#1

Gradient или как сделать теневые границы у кнопки

04.07.2015, 16:12. Просмотров 601. Ответов 2
Метки нет (Все метки)

Привет всем, я создаю тестовое приложение под Android и у меня образовался вопрос по дизайну: как сделать границу-тень у кнопки,такую как в Material Design, по определённым сторонам кнопки, не используя встроенные темы. Android API 15. Заранее спасибо.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2015, 16:12
Ответы с готовыми решениями:

Как сделать границы в пространстве ImageView при прокрутке изображения
Как сделать границы в пространстве ImageView при прокрутке большого изображения...

Как сделать запрос на URL без нажатия кнопки?
Добрый день. Подскажите, пожалуйста, как можно реализовать запрос GET/POST без...

Как сделать, чтобы приведенный код выполнялся в событии кнопки
Помогите перевести в андроид следующий код: public class Game extends Activity...

Как закрыть приложение при нажатии кнопки back или home?
Добрый день уважаемые! Помогите с написанием кода. Мне необходимо, что бы при...

Сделать границы кнопки прозрачными
Всем доброго времени суток! Друзья,возникла необходимость запихнуть внутрь...

2
Pablito
2665 / 2147 / 729
Регистрация: 12.05.2014
Сообщений: 7,500
Завершенные тесты: 1
04.07.2015, 16:16 #2
нормально - никак, там все на костылях
0
Levabala
0 / 0 / 2
Регистрация: 28.06.2013
Сообщений: 18
04.07.2015, 17:12  [ТС] #3
Нуу.. Не обязательно откидывать костыли
Я пытался через градиент это реализовать, но у меня толком не получилось. Именно проблема в том, что не получается сделать выход градиента из-под основного background в определённых сторонах кнопки.

Почему-то второй градиент не показывается на свет. Я так понял, что градиент занимает весь background, не важен размер.

XML
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
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <layer-list>
            <item android:left="5dp" android:top="5dp">
                <shape>
                    <corners android:radius="3dp"/>
                    <gradient android:endColor="#ffc6e6cc" android:startColor="#000000" android:type="radial"
                        android:gradientRadius="100" android:centerX="25%"/>
                </shape>
                <shape>
                    <corners android:radius="3dp"/>
                    <gradient android:endColor="#ffc6e6cc" android:startColor="#000000" android:type="radial"
                        android:gradientRadius="100" android:centerX="75%"/>
                </shape>
            </item>
 
            <item android:bottom="2dp" android:right="2dp">
                <shape>
                    <gradient android:angle="270"
                        android:endColor="#ffffff" android:startColor="#ffffff" />
                    <corners android:radius="4dp" />
                    <padding android:bottom="10dp" android:left="10dp"
                        android:right="10dp" android:top="10dp" />
                </shape>
            </item>
        </layer-list>
    </item>
</selector>
Добавлено через 44 минуты
Ну вопрос закрыт. Я добавляю не градиент, а обычный прозрачный квадрат со смещением относительно основного background.

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <layer-list>
            <item android:left="5dp" android:top="5dp">
                <shape>
                    <corners android:radius="3dp"/>
                    <solid android:color="#3A000000"/>
                </shape>
            </item>
            <item android:bottom="2dp" android:right="2dp">
                <shape>
                    <gradient android:angle="270"
                        android:endColor="#ffffff" android:startColor="#ffffff" />
                    <corners android:radius="4dp" />
                    <padding android:bottom="10dp" android:left="10dp"
                        android:right="10dp" android:top="10dp" />
                </shape>
            </item>
        </layer-list>
    </item>
</selector>
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.07.2015, 17:12

Как сделать так, чтобы границы дочерней формы не "уходили" за границы родительской
Всем доброго времени суток! Возник следующий вопрос. Создаю MDI-приложение....

Нужно сделать переход или как анимацию кнопки
Хочу сделать анимацию кнопки. Не знаю какой компонент взять, можно ли на...

Как убрать визуальные границы кнопки
Подскажите пожалуйста, как убрать визуальные границы кнопки (которые черного...


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

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

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