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

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

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

Определение id записи для обновления - Программирование Android

04.07.2013, 23:01. Просмотров 482. Ответов 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
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Определение id записи для обновления (Программирование Android):

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

Более одной записи в подзапросе для обновления - MySQL
Видно глаз "замылился", не могу понять почему запрос UPDATE db1.lesnuchast as a set a.lesn_id = ( SELECT MAX(c.ID) FROM avia.lesn c...

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

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

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

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

6
V0v1k
1159 / 983 / 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
1159 / 983 / 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
1159 / 983 / 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
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.07.2013, 00:52
Привет! Вот еще темы с ответами:

Процедура обновления записи - SQL Server
CREATE PROCEDURE ChangeJobTitle @jobTitle1 as nvarchar (MAX), @jobTitle2 as nvarchar (MAX) AS UPDATE dbo.Post set jobTitle =...

Как сделать так, чтобы через Центр обновления Windows загружались не только обновления для Windows? - Windows 7
Здравствуйте! Такой вопрос, как сделать так, чтобы Центр обновления Windows загружал не только обновления для windows, но и например для...

Ошибка записи и обновления в базе - C# ASP.NET
Права NTFS и в inetmgr выстаил на чтение и на запись! if Request.QueryString('act')='sav' then sSQL1 = 'UPDATE news SET...

Обновления записи спустя время - PHP БД
Здравствуйте! У меня есть сайт на котором размещают объявления. Я хочу, чтобы спустя 7 дней после розмещения оно ставало "устаревшим", и...


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

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

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