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

Как добавить view в конец списка группы expandablelistview - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Программа навигации по зданию. Определение положения человека по местному Wi-Fi http://www.cyberforum.ru/android-dev/thread1242660.html
Доброго времени суток. Мне необходимо написать программу навигации по зданию. Определение положения человека по местному WI-FI. В каких программах это можно реализовать.
Программирование Android Карта на Canvas Здравствуйте! Решил попробовать написать игру под андроид, до этого писал пару приложений несложных. Суть игры рассказывать не буду, это не интересно пока оно не заработает, вопрос в следующем: для игры мне нужно нарисовать рисовать карту с интерактивными областями, то бишь кликать на них и так далее, что и как лучше использовать? Я сразу подумал про Canvas, на нем рисовать сетку, а на сетке... http://www.cyberforum.ru/android-dev/thread1242636.html
Запуск программы на устройстве Программирование Android
Я испытывал проблемы с запуском программы на устройстве, eclipse не видел мой телефон в списке, как и команда adb devices. Я пробовал вообще всё, что можно, подключал телефон в разных режимах типа камеры итд, пытался редактировать .inf файл из google usb driver, как в одной статье на хабре советовали.. Собственно это помогало, потому что диспетчер устройств хотя бы считал это драйвером и пытался...
Embarcadero - Мобильное приложение для Андроид Программирование Android
Добрый день!Пишу приложение для Андроид, компилирую на ХЕ6. Был код на С++ Билдер. Под Embarcadero его немного изменил. Подскажите пожалуйста, где исправить ошибки в коде: (UI, наверно вы сможете детальнее помочь, код вам знаком с предыдущих тем) Unit2.cpp #include <fmx.h> #include <algorithm> #include <stdexcept> #include "Unit2.h" #include "Unit3.h"
Программирование Android Работа с уведомлениями http://www.cyberforum.ru/android-dev/thread1242504.html
Здравствуйте! Проблема в следующем: я создаю приложение для андройда, в которое иногда создает уведомления. Проблема в том, что при запуске уведомления, всегда создается новый activity, а хотелось бы, что бы если приложение активно, то работа продолжалась в том же activity, а не новом, а если приложение свернуто, то нажатие на уведомление его будило, а не создавало еще одно activity. Информация...
Программирование Android Загрузка изображения jpg.to Есть такой сервис — jpg.to. Про ссылке любое_слово.jpg.to отдает изображение. Как загрузить это изображение с помощью universal image loader в экземпляр класса Bitmap ? В лоб не вышло, там, по-моему, какие-то переадресации происходят и вылетает ошибка типа «не могу загрузить изображение любое_слово.jpg.to_расширение_экрана» подробнее

Показать сообщение отдельно
shulyakyarik
10 / 10 / 3
Регистрация: 28.03.2014
Сообщений: 156
15.08.2014, 09:55  [ТС]     Как добавить view в конец списка группы expandablelistview
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
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
package my.ua.myapplication.adapters;
 
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseExpandableListAdapter;
import android.widget.CheckBox;
import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.Toast;
 
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
 
import my.ua.myapplication.R;
import my.ua.myapplication.ToDoComment;
 
public class ToDo extends BaseExpandableListAdapter {
 
    Context context;
    String s;
    JSONArray jsonArray;
 
    public ToDo(Context context, String s){
        this.context = context;
        this.s = s;
        try {
            jsonArray = new JSONArray(s);
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }
 
 
 
    @Override
    public int getGroupCount() {
        return jsonArray.length();
    }
 
    @Override
    public int getChildrenCount(int groupPosition) {
        try {
            JSONObject jsonObject = null;
            jsonObject = jsonArray.getJSONObject(groupPosition);
            JSONArray jArr = jsonObject.getJSONArray("items");
            return jArr.length();
        }
        catch (Exception e){
            return 0;
        }
    }
 
    @Override
    public Object getGroup(int groupPosition) {
        return null;
    }
 
    @Override
    public Object getChild(int groupPosition, int childPosition) {
        return null;
    }
 
    @Override
    public long getGroupId(int groupPosition) {
        return groupPosition;
    }
 
    @Override
    public long getChildId(int groupPosition, int childPosition) {
        return childPosition;
    }
 
    @Override
    public boolean hasStableIds() {
        return true;
    }
 
    @Override
    public View getGroupView(final int groupPosition, boolean isExpanded, View convertView, ViewGroup parent) {
 
        JSONObject jsonObject = null;
        try {
            jsonObject = jsonArray.getJSONObject(groupPosition);
        } catch (JSONException e) {
            e.printStackTrace();
        }
 
        if(convertView == null){
            LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflater.inflate(R.layout.todo_head, null);
        }
 
        TextView textView = (TextView)convertView.findViewById(R.id.textView);
 
        try {
            textView.setText(jsonObject.getString("header"));
        } catch (JSONException e) {
            e.printStackTrace();
        }
 
        textView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i = new Intent(context, ToDoComment.class);
                i.putExtra("group",groupPosition);
                context.startActivity(i);
            }
        });
 
        return convertView;
    }
 
    @Override
    public View getChildView(int groupPosition, int childPosition, boolean isLastChild, View convertView, ViewGroup parent) {
        if (convertView == null) {
            LayoutInflater inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
            convertView = inflater.inflate(R.layout.todo_item, null);
        }
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
        final TextView textView = (TextView)convertView.findViewById(R.id.textView);
        String tvText = null;
        JSONObject jsonObject1 = null;
        JSONArray jArr1;
        try{
            jsonObject1 = jsonArray.getJSONObject(groupPosition);
            jArr1 = jsonObject1.getJSONArray("priority");
            tvText = jArr1.getString(childPosition);
        }
        catch (JSONException e){}
        textView.setText(tvText);
        if(tvText.equals("high")){textView.setBackgroundColor(Color.parseColor("#E73C3C"));}
        else if(tvText.equals("medium")){textView.setBackgroundColor(Color.parseColor("#f1c40f"));}
        else if(tvText.equals("low")){textView.setBackgroundColor(Color.parseColor("#4f8edc"));}
 
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
        final TextView checkText = (TextView)convertView.findViewById(R.id.textView2);
        checkText.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent i = new Intent(context, ToDoComment.class);
                i.putExtra("item",checkText.getText().toString());
                i.putExtra("priority", textView.getText().toString());
                context.startActivity(i);
            }
        });
 
 
 
 
///////////////////////////////////////////////////////////////////////////////////////////////////////////////
        final CheckBox checkBox = (CheckBox)convertView.findViewById(R.id.checkBox);
        String cbText = null;
        JSONObject jsonObject2 = null;
        JSONArray jArr2;
        try {
            jsonObject2 = jsonArray.getJSONObject(groupPosition);
            jArr2 = jsonObject2.getJSONArray("items");
            cbText = jArr2.getString(childPosition);
        } catch (JSONException e) {
            e.printStackTrace();
        }
        checkText.setText(cbText);
 
        checkBox.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if(checkBox.isChecked()){
                    checkText.setPaintFlags(checkBox.getPaintFlags() | Paint.STRIKE_THRU_TEXT_FLAG);
                }
                else {
                    checkText.setPaintFlags( checkBox.getPaintFlags() & (~ Paint.STRIKE_THRU_TEXT_FLAG));
                }
            }
        });
 
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
 
        ImageButton imageButton = (ImageButton)convertView.findViewById(R.id.imageButton);
        imageButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                AlertDialog.Builder ad = new AlertDialog.Builder(context);
                ad.setTitle("Title");
                ad.setMessage("Do you really want to delete this to-do \"" + checkBox.getText() + "\"?");
                ad.setPositiveButton("Positive", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int arg1) {
                        Toast.makeText(context, "Вы сделали правильный выбор", Toast.LENGTH_LONG).show();
                    }
                });
                ad.setNegativeButton("Negative", new DialogInterface.OnClickListener() {
                    public void onClick(DialogInterface dialog, int arg1) {
                        Toast.makeText(context, "Возможно вы правы", Toast.LENGTH_LONG).show();
                    }
                });
                ad.show();
            }
        });
 
        return convertView;
    }
 
    @Override
    public boolean isChildSelectable(int groupPosition, int childPosition) {
        return true;
    }
}
Извиняюсь за JSON так как я не знаю как засунуть такой в коллекцию.
JSON
1
2
3
4
[ 
{"header":"Group1","items":["Chit","OIdf","DKSj"],"priority":["medium","high","low"]}, 
{"header":"Group2","items":["SDKJF","SKD","Android"],"priority":["high","low","medium"]}
]
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru