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

Обработка событий в ExpandableListView - Android

Восстановить пароль Регистрация
Другие темы раздела
Android Где пункт меню File -> Settings Version -> Control -> Git в Android Studio http://www.cyberforum.ru/android-dev/thread1824783.html
Доброго дня. Не могу найти Git у себя в настройках Android Studio 2.2.1 В системе установлен Git for Windows 2.10.1, в консоле доступен. А в настройках Android Studio нет, есть только CVS, Mercurial и Subversion.
Android Фото актёров - авторское право Не нашёл куда точно закинуть эту тему, но поскольку собираюсь сделать приложение на Android, поэтому закинул сюда. Хочу использовать фотографии зарубежных актёров в моём приложении, но все фотографии беру или с поиска гугл (поиск фотографий с лицензией на использование и изменение) или с сайта commons.wikimedia.org, где выкладываются картинки для любого использования. Могут ли мне что-то... http://www.cyberforum.ru/android-dev/thread1824744.html
Диалог с вводом текста Android
Понадобился диалог с полем ввода текста. Судя по поиску все создают фрагмент и правдами и неправдами передают значение в активити его вызвавшее. После раздумий над документацией появился код (это ксамарин C# под нативный api, но на джаве должно быть практически также, только методы с прописной буквы): В активити из которой вызываем диалог private void ShowMyDialog() { ...
Смена activity в Navigation Drawer Android
Буду в очередной раз оправдывать свой ник. Суть вопроса - распишите по полочкам как сменить activity. В Android Studio создаю стандартный проект с Navigation Drawer. Создаю класс Edit (соответственно создается activity_edit.xml в res/layout/). В activity_edit.xml прописываю в заголовке android:id="@+id/activity_edit". Еще добавляю туда две кнопки (им так же прописываю id). Теперь в...
Android Обращение к элементам фрагмента из активити http://www.cyberforum.ru/android-dev/thread1824411.html
Есть необходимость в программе менять значение TextView находящегося во фрагменте. Фрагмент должен выводится в контейнер. И затем я должен найти элементы и изменить их. Если делать через динамический контейнер, то ничего не получается, элементы не обнаруживаются. <FrameLayout android:layout_width="match_parent" android:orientation="vertical" ...
Android Профиль текущего пользователя Привет всем! Как показать в разделе "профиль" : имя, аватарку, фоловеров и т.д. текущего пользователя? Примерно как на картинке. подробнее

Показать сообщение отдельно
Nikproga
0 / 0 / 0
Регистрация: 06.04.2015
Сообщений: 31
12.10.2016, 16:49     Обработка событий в ExpandableListView
Всем привет. Только начал осваивать Android Studio как столкнулся с рядом проблем: у меня есть Список-дерево ExpandableListView в которой есть группы, например название фирмы которая выпускает телефон и под этой группой названия самих телефонов Samsung -> Galaxy s3, и тд. списком вниз. И собственно в чем проблема? Я пишу simple_list_item_multiple_choice что бы можно было ставить галочки на против названий телефонов, но они не отмечаются, поле как у checkBox есть, отметить его нельзя
Вот код activitu_main:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.example.nikita.expandablelistview.MainActivity">
    <ExpandableListView
        android:id="@+id/elvMain"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="37dp">
    </ExpandableListView>
</RelativeLayout>
И код MainActivity.java:
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
public class MainActivity extends Activity {
 
    String[] groups = new String[] {"HTC", "Samsung", "LG"};
 
    // названия телефонов (элементов)
    String[] phonesHTC = new String[] {"Sensation", "Desire", "Wildfire", "Hero"};
    String[] phonesSams = new String[] {"Galaxy S II", "Galaxy Nexus", "Wave"};
    String[] phonesLG = new String[] {"Optimus", "Optimus Link", "Optimus Black", "Optimus One"};
 
    // коллекция для групп
    ArrayList<Map<String, String>> groupData;
 
    // коллекция для элементов одной группы
    ArrayList<Map<String, String>> childDataItem;
 
    // общая коллекция для коллекций элементов
    ArrayList<ArrayList<Map<String, String>>> childData;
    // в итоге получится childData = ArrayList<childDataItem>
 
    // список атрибутов группы или элемента
    Map<String, String> m;
 
    ExpandableListView elvMain;  //ListView lvMain;
 
    /** Called when the activity is first created. */
    //@Override
    @Override
    public void onCreate(Bundle savedInstanceState) {  //public void onCreate(Bundle savedInstanceState)
        super.onCreate(savedInstanceState);  //super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);  //setContentView(R.layout.main);
 
        // заполняем коллекцию групп из массива с названиями групп
        groupData = new ArrayList<Map<String, String>>();
        for (String group : groups) {
            // заполняем список атрибутов для каждой группы
            m = new HashMap<String, String>();
            m.put("groupName", group); // имя компании
            groupData.add(m);
        }
 
        // список атрибутов групп для чтения
        String groupFrom[] = new String[]{"groupName"};
        // список ID view-элементов, в которые будет помещены атрибуты групп
        int groupTo[] = new int[]{android.R.id.text1};
 
 
        // создаем коллекцию для коллекций элементов
        childData = new ArrayList<ArrayList<Map<String, String>>>();
 
        // создаем коллекцию элементов для первой группы
        childDataItem = new ArrayList<Map<String, String>>();
        // заполняем список атрибутов для каждого элемента
        for (String phone : phonesHTC) {
            m = new HashMap<String, String>();
            m.put("phoneName", phone); // название телефона
            childDataItem.add(m);
        }
        // добавляем в коллекцию коллекций
        childData.add(childDataItem);
 
        // создаем коллекцию элементов для второй группы
        childDataItem = new ArrayList<Map<String, String>>();
        for (String phone : phonesSams) {
            m = new HashMap<String, String>();
            m.put("phoneName", phone);
            childDataItem.add(m);
        }
        childData.add(childDataItem);
 
        // создаем коллекцию элементов для третьей группы
        childDataItem = new ArrayList<Map<String, String>>();
        for (String phone : phonesLG) {
            m = new HashMap<String, String>();
            m.put("phoneName", phone);
            childDataItem.add(m);
        }
        childData.add(childDataItem);
 
        // список атрибутов элементов для чтения
        String childFrom[] = new String[]{"phoneName"};
        // список ID view-элементов, в которые будет помещены атрибуты элементов
        int childTo[] = new int[]{android.R.id.text1};
 
        SimpleExpandableListAdapter adapter = new SimpleExpandableListAdapter( //ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource
                this,
                groupData,
                android.R.layout.simple_expandable_list_item_1,
                groupFrom,
                groupTo,
                childData,
                android.R.layout.simple_list_item_multiple_choice,
                childFrom,
                childTo);
 
        elvMain = (ExpandableListView) findViewById(R.id.elvMain);
        elvMain.setChoiceMode(ExpandableListView.CHOICE_MODE_MULTIPLE);
        elvMain.setAdapter(adapter);
    }
}
По хорошему мне нужно получать id выбранных элементов, для дальнейшего использования.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 04:24. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru