Как сделать кнопки с возможностью фиксации ?

Ответить
Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Как сделать кнопки с возможностью фиксации ?

Сообщение Chvalov » 27 апр 2015, 20:54

Нужно при нажатии на кнопку ее зафиксировать и при нажатии на основную кнопку вызвать нужное действие.
Допустим есть кнопки "Вперед, Назад, В лево и т.п." и основные кнопки "Идти, Бежать, плыть и т.п."

Нажимает на кнопку "Вперед" она у нас фиксируется и нажимаем на главную кнопку "Бежать" и тоаст выводит сообщение
"Бежать вперед".

Взял для примера вот эти кнопки https://github.com/markushi/android-circlebutton
Фиксировать их можно вод так:

Код: Выделить всё

public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        findViewById(R.id.Btn_Idti).setPressed(true);
        findViewById(R.id.Btn_Bezat).setPressed(true);

    }
Но эта фиксация работает только при старте активити, а мне нужно при нажатии на кнопку.

Пробовал сделать чтобы при нажатии на кнопку оно фиксировалось, но увы ничего не получается.
Фиксировать можно другие кнопки, но не ту на которую нажал.

К примеру:

Код: Выделить всё

    public void OnClick_Btn_Idti(View view) {
        findViewById(R.id.Btn_Bezat).setPressed(true);
    }
Теперь при нажатии Идти зафиксируется кнопка Бежать.

Кто подскажет как правильно сделать ?
А то в голове тупой вариант, наложить кнопку на кнопку и при нажатии давать ей свойство (visibility:gone) и поверх рисовать зафиксированую (setPressed).
Подскажите нормальный вариант, чтобы я не изобретал колесо :)

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Foenix » 27 апр 2015, 22:23

не пойму что общего между той плавающей кнопкой и той, что вы хотите фиксировать?
Фиксировать - это по-русски "нажатое состояние"? для этого есть другие кнопки - переключатели, радиобаттоны.. у них два состояния, если в стилях подправить - можно их кастомизировать по-любому.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Chvalov » 27 апр 2015, 22:29

Foenix писал(а):не пойму что общего между той плавающей кнопкой и той, что вы хотите фиксировать?
Фиксировать - это по-русски "нажатое состояние"? для этого есть другие кнопки - переключатели, радиобаттоны.. у них два состояния, если в стилях подправить - можно их кастомизировать по-любому.
А с этими кнопками никак такое не сделать ?

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Foenix » 27 апр 2015, 23:49

зачем?
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Chvalov » 28 апр 2015, 00:02

Foenix писал(а):зачем?
Потому что у меня уже почти готовый проект, только с этими кнопками.

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение doter.ua » 28 апр 2015, 00:22

Любая вьюшка с ручной подменой бекграунда( заготовки on\off состояние). Реализуется ИФами за 2-3 минуты.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Chvalov » 28 апр 2015, 00:26

doter.ua писал(а):Любая вьюшка с ручной подменой бекграунда( заготовки on\off состояние). Реализуется ИФами за 2-3 минуты.
Можно узнать какими именно ?

А то все что пробовал не давало нужного результата (

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение doter.ua » 28 апр 2015, 00:34

Chvalov писал(а):
doter.ua писал(а):Любая вьюшка с ручной подменой бекграунда( заготовки on\off состояние). Реализуется ИФами за 2-3 минуты.
Можно узнать какими именно ?

А то все что пробовал не давало нужного результата (
ТекстВью + setBackground. Не нужно вручную шаманить с состояниями.
В кратце:

Код: Выделить всё

boolean isPressed = false;

void OnClick(){
   if( isPressed ){
       set bg  нажатое
       ... какой-нибудь код
   } else {
       set bg  обычное
       ... какой-нибудь код
   }
   //В конце меняем состояние вручную
   isPressed = !isPressed;
}
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Foenix » 28 апр 2015, 01:02

это правильно делать стилями.
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Foenix » 28 апр 2015, 01:04

R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198


Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Chvalov » 28 апр 2015, 04:55

Foenix писал(а):это правильно делать стилями.
У меня стилями не получится, так как я использую - https://github.com/markushi/android-circlebutton

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение doter.ua » 28 апр 2015, 09:50

Foenix писал(а):это правильно делать стилями.
Такое прокатит с чекбоксом или радиобатоном, обычный батон меняет стейт во время нажатия и возвращается к старому после отпускания.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Foenix » 28 апр 2015, 11:28

doter.ua, это по-любому правильно делать стилями
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение doter.ua » 28 апр 2015, 11:30

http://developer.alexanderklimov.ru/and ... button.php тоглБатон должен подойти.
+

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="false" android:drawable="@drawable/btn_toggle_off" />
    <item android:state_checked="true" android:drawable="@drawable/btn_toggle_on" />
</selector>
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

Chvalov
Сообщения: 24
Зарегистрирован: 28 мар 2014, 16:57

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Chvalov » 28 апр 2015, 19:51

doter.ua писал(а):http://developer.alexanderklimov.ru/and ... button.php тоглБатон должен подойти.
+

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="false" android:drawable="@drawable/btn_toggle_off" />
    <item android:state_checked="true" android:drawable="@drawable/btn_toggle_on" />
</selector>
Я уже думал над тоггл кнопками, но хотелось бы эти все же оставить.

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

Аватара пользователя
doter.ua
Сообщения: 1106
Зарегистрирован: 23 ноя 2013, 16:08
Откуда: Ukraine

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение doter.ua » 28 апр 2015, 21:47

Chvalov писал(а):
doter.ua писал(а):http://developer.alexanderklimov.ru/and ... button.php тоглБатон должен подойти.
+

Код: Выделить всё

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:state_checked="false" android:drawable="@drawable/btn_toggle_off" />
    <item android:state_checked="true" android:drawable="@drawable/btn_toggle_on" />
</selector>
Я уже думал над тоггл кнопками, но хотелось бы эти все же оставить.

Вот как мне сделать чтобы при нажатии на кнопку она так и оставалась в нажатом положении и не возвращалась до нажатия основной кнопки ?
Никак, конец.
Семь раз отмерь - поставь студию.
Эклипс не студия, ошибка вылетит - не исправишь.
Скажи мне кто твой друг, и оба поставили студию.
Студия - свет, а эклипс - тьма.

Аватара пользователя
Foenix
Сообщения: 4201
Зарегистрирован: 20 окт 2012, 12:01

Re: Как сделать кнопки с возможностью фиксации ?

Сообщение Foenix » 28 апр 2015, 21:50

doter.ua писал(а): Никак, конец.
наконец-то понял
Изображение
R.id.team

NullPointerException - что делать???
viewtopic.php?f=33&t=3899&p=28952#p28952
Где моя ошибка?
viewtopic.php?f=60&t=3198

Ответить