Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Android > Кнопка назад |
Автор: Ярослав 1.4.2012, 15:27 |
Проблема такова есть главная форма в ней выбор других форм в них ячейки в которые вводятса числа, при нажатии кнопки назад (обработчик я знаю) тоесть на главную фому при обратном выборе формы в ячейках нет цифер.Подскажите как сделать чтоб оставались там числа. Заранее благодарю |
Автор: Oligarh 1.4.2012, 20:52 |
Создайте переменные, которые будут соответствовать каждой форме. По переходу на новую форму записывайте в переменные необходимые значения, при возврате - вычитывайте из переменных значения и вставляйте по умолчанию в нужные вам поля. |
Автор: Ярослав 2.4.2012, 11:02 |
а другого метода нет, а то чёт я не понял |
Автор: toxx 2.4.2012, 11:09 |
Используйте Preference's |
Автор: javastic 2.4.2012, 18:02 |
Вот пример как передавать значения из/в активити. Пользуйся на здоровье. |
Автор: Ярослав 2.4.2012, 18:27 |
Спасибо брат посмотрю, дам ответ |
Автор: Ярослав 2.4.2012, 19:35 |
Почти то что нужно. Но проблема токова что при обртном возвращении на форму в ячейках пустота, а необходимо чтоб оставались данные в ячейках потому как буду ссылатса на них из других форм |
Автор: ShellRaiser 2.4.2012, 20:43 |
используйте преференсы для таких ситуаций, или статически храните, это не безопасно стучаться за данными к другой активити. |
Автор: Ярослав 3.4.2012, 20:58 |
Спасибо буду разбиратса. Жаль что это не нетбенс там таких проблем нет |
Автор: javastic 6.4.2012, 08:37 | ||
Честно говоря я не понимаю почему данные сбрасываются, в моем примере после возвращения из дочерней активити данные из полей не стираются. Сделай тогда через Preference как тут народ предлагает, запоминай значения при открытии новой активити и потом при возвращении вытаскивай их и через setText проставляй в поля. |
Автор: Ярослав 8.4.2012, 08:28 |
Скину свой проект. По возможности помогите пожалуйста |
Автор: Ярослав 8.4.2012, 14:00 |
Вот нацарапал програмульку. Подскажите как правельно сделать, просто будит у меня много программ таким методом (программы для артиллеристов) Спасибо большое заранее |
Автор: toxx 8.4.2012, 22:07 | ||
Не совсем понятно что вы хотите, но вместо System.exit(0); используйте finish() Зачем столько setContentView(); ?? Какая стоит задача конечная? |
Автор: Ярослав 9.4.2012, 00:32 |
Задача заключаетса сложить две ячейки каждая которая находитьса На разной форме, а на третей форме кнопка с обработчиком и ячейкой вывода результата |
Автор: toxx 9.4.2012, 13:37 |
Можно былобы сделать 3 активити, 1- Обработчик с кнопкой, берет значения из Preference и считает 2- Значение 1 формы 3- Значение 2 формы записывать ваши значения в Preference |
Автор: Ярослав 9.4.2012, 14:34 |
а как это реализовать |
Автор: Ярослав 9.4.2012, 19:11 |
Подскажите как именно, а то я чёт не догоняю. Читал про Preference но немогу понять как применить к моему случаю |
Автор: Ярослав 11.4.2012, 21:03 |
Есть идея через Preference только пример у меня для одной ячейки, а на две не получаетса, подскажите как добавить Вот код public void Click_save (View v){ saveText(); } public void Click_lond (View v){ loadText(); } void saveText(){ EditText etText = (EditText)findViewById(R.id.editText_id); sPref=getPreferences (MODE_PRIVATE); Editor ed=sPref.edit(); ed.putString(SAVED_TET, etText.getText().toString()); ed.commit(); Toast.makeText(this, "Текст сохранён", Toast.LENGTH_SHORT).show(); } void loadText(){ EditText etText = (EditText)findViewById(R.id.editText_id); sPref=getPreferences (MODE_PRIVATE); String savedText =sPref.getString(SAVED_TET, ""); etText.setText(savedText); Toast.makeText(this, "Текст загружен", Toast.LENGTH_SHORT).show(); } |
Автор: Ярослав 12.4.2012, 21:37 |
Всё рзобрался всем спасибо public class SavingActivity extends Activity { SharedPreferences sPref; public static final String EXT_COLS = "cols"; public static final String EXT_ROWS = "rows"; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } public void Click_save (View v){ saveText(); } public void Click_lond (View v){ loadText(); } void saveText(){ EditText etText1 = (EditText)findViewById(R.id.editText1_id); EditText etText2 = (EditText)findViewById(R.id.editText2_id); sPref=getPreferences (MODE_PRIVATE); Editor ed=sPref.edit(); ed.putString(EXT_COLS, etText1.getText().toString()); ed.putString(EXT_ROWS, etText2.getText().toString()); ed.commit(); Toast.makeText(this, "Текст сохранён", Toast.LENGTH_SHORT).show(); } void loadText(){ EditText etText1 = (EditText)findViewById(R.id.editText1_id); EditText etText2 = (EditText)findViewById(R.id.editText2_id); sPref=getPreferences (MODE_PRIVATE); String savedText1 =sPref.getString(EXT_COLS, ""); String savedText2 =sPref.getString(EXT_ROWS, ""); etText1.setText(savedText1); etText2.setText(savedText2); Toast.makeText(this, "Текст загружен", Toast.LENGTH_SHORT).show(); } } |