2015-03-08 4 views
0

Я показываю даты для пользователя в макете, скажем, текстовом.
Когда пользователь нажимает кнопку, я хочу получить информацию в тех полях, которые представляют эти «даты», но если я получу текст в них, это не имеет для меня значения.
Мне нужно было бы хранить где-то исходные даты, которые создали эти «текстовые» элементы, и вытащить их оттуда.
Есть ли конкретная конструкция в android, которую можно использовать в качестве области прикосновения, или я должен просто использовать статический класс с переменной для их хранения?Как/где я могу «хранить»/хранить данные в своем приложении?

+1

Храните их в памяти или http://developer.android.com/guide/topics/data/data-storage.html – madlymad

+0

@madlymad: Кажется, это для примитивов. В то время как я хочу сохранить 'Joda.LocalTime' – Jim

+1

Вы можете использовать файловую систему, чтобы сэкономить почти любой объект, рассматриваемый java serializable (см. ** Внутреннее хранилище **). Кроме того, я думаю, есть способ сохранить ваше время либо в виде строки, либо в int/long value (см. ** SharedPreferences **). – madlymad

ответ

1

В вашем случае вы должны использовать SharedPreferences для хранения данных путем преобразования его в строку (текст) или int/long в первую очередь. Это позволит вам легко записывать и извлекать данные, и вы должны использовать это.

Вы также можете использовать файловую систему, чтобы сохранить практически любой объект Java, используя serializable, на внутреннем хранилище.

В любом случае данные остаются там, даже если ваше приложение закрыто или устройство выключено.

+0

Итак, если в любом случае данные выживут, как бы я выбрал между SharedPreferences и файловой системой? Являются ли они подходящими в конкретных случаях? – Jim

+0

SharedPrefernces проще в использовании. – JonasCz

+0

Его следует использовать, если вы хотите сохранить только текст или цифры. С помощью 'serializable' вы можете сохранять любые объекты Java. – JonasCz

Смежные вопросы