2016-06-13 6 views
-2

У меня есть некоторые основные переменные в моем основном действии, что я извлекаю их значения из Интернета после входа пользователя в систему. После этого существует несколько действий, которые могут изменять эти значения в базе данных, но это не так, t отражается в текущих загруженных значениях, пока пользователь не выйдет из системы. (процесс, в котором я извлекаю данные из Интернета)Настройка переменных активности из разных видов деятельности

Каков наилучший способ обновить эти значения в основном действии из активности 2 непосредственно без выхода из системы?

Есть ли способ установить эти переменные, не делая намерения и не помещая новые значения в дополнительный пакет? (Мне нужно изменить значения, не возвращаясь к активности)

+3

Вы можете использовать 'SharedPreference' –

+0

Вы можете передать значение в Intent расслоении и startActivityForResult. Как только вы получите обратный вызов результата активности, вы можете обновить, изменив значение – Nikola

+0

. Благодарю. как я могу изменить определенное значение переменной, поместите новое значение с тем же ключом? это удалить прежнее значение? –

ответ

1

Возможно, вы попытаетесь поместить переменные в пользовательский класс Application в качестве статических элементов, а затем получить доступ к ним из любого места через Application.xyzStaticMember(). Вот пример:

public class MyTestApp extends Application { 
    private static List<Int> testList; 
    public static void setList(List<Int> l) { 
     testList = l; 
    } 
    public static List<Int> getList() { 
     return testList; 
    } 
} 

Затем доступ к членам: MyTestApp.setList(null); или MyTestApp.getList();. О, и не забудьте использовать класс в файле AndroidManifest.xml!

<application android:name="com.example.MyTestApp" 
/* ...more stuffs */ /> 
+0

спасибо, я попробую это. это будет применимо, я думаю. –

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