Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
qvazar
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 37
#1

Определение id записи для обновления

04.07.2013, 23:01. Просмотров 507. Ответов 6
Метки нет (Все метки)

У меня есть таблица с великим множеством ячеек с TextView, при нажатии на одну из ячеек появляется TimePickerDialog, где пользователь выбирает время, которое затем должно отобразиться в данном TextView, а также добавиться в базу данных(которая уже содержит таблицу и столбцы для этой информации, нужно просто обновить их значения).
При попытке реализовать это у меня возникли следующие проблемы:
1) Как после выбора времени в TimePickerDialog присвоить выбранное значение указанному TextView? Таблица со всем содержимым генерируется автоматически, есть массивы с ячейками этой таблицы, но как передать индекс нужной ячейки?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
protected Dialog onCreateDialog(int id) {
          if (id == DIALOG_TIME_ID) {
            TimePickerDialog tpd = new TimePickerDialog(this, myCallBack, hour, minute, true);
            return tpd;
          }
          return super.onCreateDialog(id);
        }
     
     OnTimeSetListener myCallBack = new OnTimeSetListener() {
            public void onTimeSet(TimePicker view, int hourOfDay, int minuteOfHour) {
             // здесь нужно обновить нужный TextView
            }
          };
2) Та же проблема с добавлением записей в БД - как обновить запись с ID, соответствующим выбранной ячейке?
Java
1
2
3
4
5
6
7
8
tvArray.elementAt(i).setOnClickListener(new OnClickListener() {
 
@Override
public void onClick(View v) {
showDialog(DIALOG_TIME_ID);
// здесь должно обновляться значение в БД
}
});
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2013, 23:01
Ответы с готовыми решениями:

Выпуск обновления для Google Play
Всем привет. У меня есть уже готовое приложение на Google Play. Пишу в AS 1.5 ...

Более одной записи в подзапросе для обновления
Видно глаз "замылился", не могу понять почему запрос UPDATE db1.lesnuchast as...

Как правильно написать метод для обновления записи, чтобы он возвращал объект?
public Competition updateCompetition(Long id, Integer point, Integer place){ ...

Где скачать обновления для AVG Internet Security для обновления в оффлайн режиме?
Сабж.

После перезагрузки, затребованной Центром обновления для начала установки обновления, установка не начинается
Центр обновления Windows все время требует перезагрузки для установки...

6
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
04.07.2013, 23:03 #2
в onClick вы получаете View по которому кликнули.
0
qvazar
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 37
05.07.2013, 00:02  [ТС] #3
Да, но как изменить этот View(в данном случае - изменить текст)?
setText к нему не применить, т.к. в данном случае TextView этот представлен в виде своего класса-родителя View, у него нет этого метода.
Можно ли как-то напрямую это сделать? Или нужно массив с TextView делать глобальным, а в onClick сравнивать каждый элемент этого массива с данным объектом View?
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
05.07.2013, 00:17 #4
кастинг? не, не слышали.
0
qvazar
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 37
05.07.2013, 00:27  [ТС] #5
Если бы мне надо было получить текст из этого TextView, я бы написал что-нибудь типа
Java
1
2
TextView tv = (TextView) view;
String text = tv.getText().toString();
Но мне надо изменить сам view, как это сделать?
P.S. извиняюсь, если спрашиваю слишком очевидное.
0
V0v1k
1160 / 984 / 1
Регистрация: 28.06.2012
Сообщений: 3,462
05.07.2013, 00:45 #6
Java
1
2
TextView tv = (TextView) view;
tv.setText(text);
1
qvazar
1 / 1 / 0
Регистрация: 08.12.2010
Сообщений: 37
05.07.2013, 00:52  [ТС] #7
Тогда прошу прощения, просто я думал, что таким образом не будет изменен view, полученный в onClick(). Все оказалось намного проще.
0
05.07.2013, 00:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.07.2013, 00:52

Центр обновления требует перезагрузку для начала установки обновления, но после неё ничего не устанавливается
Центр обновления Windows все время требует перезагрузки для установки...

Процедура обновления записи
CREATE PROCEDURE ChangeJobTitle @jobTitle1 as nvarchar (MAX), @jobTitle2 as...

Ошибка записи и обновления в базе
Права NTFS и в inetmgr выстаил на чтение и на запись! if...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

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