Форум программистов, компьютерный форум, киберфорум
Наши страницы

Создать свой "контрол" наследник Button - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Изменение анимации во время проигрывания http://www.cyberforum.ru/android-dev/thread1832874.html
После того как я запустил анимацию движения нужно чтобы при нажатии на кнопку объект двигался не с начальной точки, а от той на которую он был сдвинут первой анимацией. @Override protected...
Программирование Android MapsActivity and DrawerLayout выбивает приложение Доброго времени суток. Создал MapsActivity как главное активити. И добавил туда код с шаблона NavigationActivity. Но при запуске сразу выбивает приложение.В чём может быть дело? public class... http://www.cyberforum.ru/android-dev/thread1832629.html
Программирование Android Выполнение программы при наступлении нового дня
Приветствую, пришу маленькую программу для android, основной задачей которой является реализация одного кода каждый день(например, каждый день в 0:00). Сам код готов, но как его выполнять каждый...
Реализация ввода цифрового пароля через GridView Программирование Android
Господа, такой вопрос. Пытаюсь реализовать ввод пин-кода через GridView, состоящего из ImageView. Подобное реализовано в приложениях аля "сбербанкОнлайн" для быстрого доступа к приложению. protected...
Программирование Android Подскажите - написать приложение для образовательного учреждения http://www.cyberforum.ru/android-dev/thread1832478.html
Всем доброго! Не ругайте за незнание, я уж больно новый в этой теме. Я хочу написать мобильное приложение... как официальное соц. приложение моего образовательного учреждения, скажем так. Для...
Программирование Android Сохранить рабочим поток после выключения экрана Работает поток на получение и отправку информации на сервер, по окончании девайс держит связь с сервером для получения новых данных (бросаются байты что есть связь). Но при выключении экрана этот... подробнее

Показать сообщение отдельно
ILNAR_93
Android
231 / 231 / 25
Регистрация: 19.01.2013
Сообщений: 1,749
Записей в блоге: 3
24.10.2016, 13:09  [ТС]
Цитата Сообщение от Паблито Посмотреть сообщение
разные контролы - разные файлы с фоном, мне кажется проще некуда
Можно и так.

Если есть возможность сделать как я думаю, будет как то все в одном. Из-за этого хотелось так

Добавлено через 2 часа 1 минуту
Я сделал следующее:

1) Файл layout design_button.xml
XML
1
2
3
4
5
6
7
8
9
10
<?xml version="1.0" encoding="utf-8"?>
<merge xmlns:android="http://schemas.android.com/apk/res/android">
 
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/design_button"
        android:background="@drawable/design_button_bg"/>
 
</merge>
2) drawable design_button_bg.xml
XML
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?>
<shape android:shape="rectangle" xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="30dp"/>
<solid android:color="@color/design_button_bg_color"/>
</shape>
3) Контроллер
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
public class designButton extends LinearLayout {
    private View mView;
    private int backgroundColor;
 
    public designButton(Context context, AttributeSet attrs) {
        super(context, attrs);
        // TODO Auto-generated constructor stub
        TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.designButton);
        try {
            backgroundColor = a.getColor(R.styleable.designButton_backgroundColor, MyApplication.getInstance().getColorCompat(R.color.design_button_bg_color));
        } finally {
            a.recycle();
        }
 
        LayoutInflater inflater;
        inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        mView = inflater.inflate(R.layout.design_button, this);
 
        mView.findViewById(R.id.design_button).setBackgroundColor(backgroundColor);
 
    }
}
attrs.xml
XML
1
2
3
4
   <declare-styleable name="designButton">
        <attr name="backgroundColor" format="color" value="#00aff0"/>
 
    </declare-styleable>



Вот так я вставляю кнопку

XML
1
2
3
4
5
<....designButton
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="sdsds"
            app:backgroundColor="@color/white"/>
Я правильно вообще делаю?

Как мне применить app:backgroundColor="@color/white" для пункт 2 элемент solid
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru