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

Программирование Android

Войти
Регистрация
Восстановить пароль
 
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
#1

Как поместить Switch в NavigationView? - Программирование Android

04.02.2016, 13:42. Просмотров 464. Ответов 13
Метки нет (Все метки)

Как поместить Switch в NavigationView?
Пробовал поместить в меню NavigationView,но ничего не отображается
activity_maps_drawer
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?xml version="1.0" encoding="utf-8"?>
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <group android:checkableBehavior="single">
        <Switch
            android:id="@+id/mySwitch"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:layout_alignParentTop="true"
            android:layout_marginTop="20dp"
            android:text="@string/Mode" />
    </group>
</menu>

NavigationView
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
    <android.support.design.widget.NavigationView
        android:id="@+id/nav_view"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:fitsSystemWindows="true"
        app:headerLayout="@layout/nav_header_maps"
        app:menu="@menu/activity_maps_drawer" />
0
Миниатюры
Как поместить Switch в NavigationView?  
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.02.2016, 13:42
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как поместить Switch в NavigationView? (Программирование Android):

NavigationView на фрагментах - Программирование Android
Всем привет! Нужен совет. Задача банальная. Приложение с NavigationView + Toolbar, доступ к которому должен быть с любой активити в...

NavigationView с GridView - Программирование Android
Здравствуйте! Обучаюсь на курсах по Java и параллельно на Android. Задали сделать простенькое приложенbt для Android, решил сделать...

Анимация NavigationView - не обрабатываются события от кнопок - Программирование Android
Решил опробовать данное решение.https://github.com/mxn21/FlowingDrawer. Проблема никак не могу обработать события с кнопок. Главное...

Как обращаться к кнопке из массива методом switch? - Программирование Android
Всем привет! Создал массив кнопок: Button buttons = new Button; А как обращаться к кнопкам из массива методом switch я не знаю(( ...

Как прописать ссылки на сторонний ресурс через switch - Программирование Android
Доброго времени суток. Я здесь новичок, поэтому не судите строго. Столкнулся с необходимостю в navigation grawer к каждому элементу меню...

Уважаемые программисты, как избавиться от бесконечного ветвления switch и if в игре? - Программирование Android
Можно ли выражения вроде &quot; y=Assets.mobs.pointOfRespMobWolfPosY;&quot; , и им подобные, записать в массив какой то, строковый или вроде этого-...

13
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
04.02.2016, 13:52 #2
что-то типа такого?
Как поместить Switch в NavigationView?
1. в папке с лаяутами создаем файл, например switch_layout.xml
XML
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.SwitchCompat xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="center_vertical" />
2. в меню, в нужном нам пункте добавляем строку app:actionLayout="@layout/switch_layout", типа так
XML
1
2
3
4
5
        <item
            android:id="@+id/nav_camera"
            app:actionLayout="@layout/switch_layout"
            android:icon="@drawable/ic_menu_camera"
            android:title="Import" />
3. PROFIT
1
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
04.02.2016, 15:52  [ТС] #3
Паблито, немножко не то,я хочу чтоб было вот так:
чтоб можно было подписать например вкл/выкл
0
Миниатюры
Как поместить Switch в NavigationView?  
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
04.02.2016, 15:57 #4
на картинке не дровер и не NavigationView
0
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
04.02.2016, 15:59  [ТС] #5
Паблито, на это не обращайте внимания,главное switch
он должен располагаться как вы показали только с надписями вкл/выкл
0
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
04.02.2016, 16:02 #6
я показал как добавить Switch, он выглядит так потому что это новый стиль
если в моем примере заменить на просто Switch в разметке, то он будет выглядеть точно так как на этой картинке

"Switch is currently ON"
надпись эта для умственно отсталых? на самом компоненте написано ON, этого мало?
1
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
04.02.2016, 16:06  [ТС] #7
Паблито, или при использовании SwitchCompat для совместимости нельзя так сделать?
Только в Switch

Добавлено через 2 минуты
Паблито, да эту картинку я в инете только что взял чтоб показать сам switch,текст мне не нужен

Добавлено через 1 минуту
Паблито, я попробовал как вы сказали <android.support.v7.widget.Switch
но программа выкинула из приложения
0
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
04.02.2016, 16:10 #8
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
XML
1
2
3
4
5
<?xml version="1.0" encoding="utf-8"?>
<Switch xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="match_parent"
    android:layout_gravity="center_vertical" />
1
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
04.02.2016, 16:42  [ТС] #9
Паблито, а как теперь обратить к switch?
Switch mySwitch = (Switch) findViewById(R.id.mySwitch) не работает
0
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
04.02.2016, 17:12 #10
где-то в onCreate()
Java
1
2
3
        NavigationView navView = (NavigationView) findViewById(R.id.nav_view);
        MenuItem item = navView.getMenu().findItem(R.id.menu_switch);
        Switch mySwitch = (Switch) item.getActionView().findViewById(R.id.mySwitch);
0
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
04.02.2016, 17:31  [ТС] #11
Паблито, во второй строчке вместо menu_switch мне нужно указать mySwitch правильно я понял?

Добавлено через 2 минуты
Паблито, я сделал вот так только не работает
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
        NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
        MenuItem item = navigationView.getMenu().findItem(R.id.mySwitch);
        Switch mySwitch = (Switch) item.getActionView().findViewById(R.id.mySwitch);
        navigationView.setNavigationItemSelectedListener(this);
 
        //set the switch to ON
        mySwitch.setChecked(true);
        //attach a listener to check for changes in state
        mySwitch.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
 
            @Override
            public void onCheckedChanged(CompoundButton buttonView,
                                         boolean isChecked) {
 
                if(isChecked){
                    start();
                }else{
                    mMap.clear();
                }
 
            }
        });
0
Pablito
2476 / 1960 / 611
Регистрация: 12.05.2014
Сообщений: 6,863
Завершенные тесты: 1
04.02.2016, 17:39 #12
Цитата Сообщение от kimsan Посмотреть сообщение
во второй строчке вместо menu_switch мне нужно указать mySwitch правильно я понял?
там надо указать id пункта меню, наверное mySwitch

Цитата Сообщение от kimsan Посмотреть сообщение
я сделал вот так только не работает
а у меня работает

логи ошибок надо видеть
0
kimsan
0 / 0 / 0
Регистрация: 04.01.2016
Сообщений: 50
05.02.2016, 17:01  [ТС] #13
Паблито, только что попробовал запустить программу и она заработало,странно почему тогда она вчера тупила
вы можете помочь разобраться с логами других ошибок?
0
Pablito
05.02.2016, 17:12     Как поместить Switch в NavigationView?
  #14

Не по теме:

обычно на каждый вопрос создается отдельная тема, так проще будет потом искать кому надо будет
это не мое правило, а форума )
если отвечу не я то кто-то другой

0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.02.2016, 17:12
Привет! Вот еще темы с ответами:

Как перебрать все файлы в директории на SD карте и поместить найденные jpg в массив? - Программирование Android
При первом запуске программы я создаю некую директорию на SD карте: File sdPath = Environment.getExternalStorageDirectory(); sdPath =...

Как поместить surfaceview или glsurfaceview на "пол" экрана - Программирование Android
Вопрос в общем то в заголовке, возможно ли это? Чтобы вьюшка с surfaceview или glsurfaceview была на пол экрана?

Как поместить в preferences arrayList типа: arraylist<Class> - Программирование Android
Как поместить в preferences arrayList типа: arraylist&lt;Class&gt; Class содержит вид: public class CountryClass { private String...

Поместить switch в switch - PHP
Всем привет. Есть работающий код который обрабатывает строку GET и берет от туда данные Вот урл doneck.site.com/repetitory/english/zno/ ...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
05.02.2016, 17:12
Ответ Создать тему
Опции темы

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