Cохранить, восстановить данные при повороте(Fragment,Thread)
Добавлено: 04 июн 2014, 23:37
Помогите разобраться как сделать правильно поворот экрана.
Есть МаинАктивити в которой создается клас XML_Load в котором загружаются данные.
Вызов класса в Thread. Или это без разницы ?
Потом TestClass_2 эти данные использует.
Как сохранить данные что бы при повороте они сохранялись ну и не вылетало прилож.?
А именно - adapter, list, itemList в XML_Load.
Ну и саму ссылку наверно на XML_Load...
Ещё момент - в классе XML_Load создается еще один класс АДАПТЕР (TestClass_2)....
Нужно ли ссылку на него тоже сохранять или если будет ссылка на XML_Load, то он сам должен найти класс TestClass_2 ?
Вообщем ппц - полный !!
Проверку или уже есть данные я потом сделаю.
Пожалуйста, помогите. Вообще мало представляю как что к чему, а сделать надо полюбасу,
поворот нужен однозначно.
Вся надежда на Вас. Заранее спасибо.
MainActivity.java
[syntax=java5]public class MainActivity extends ActionBarActivity {
public static ArrayList<String> mURL = new ArrayList<String>();
XML_Load testClass_2;
Context context;
String xml;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
context = this;
testClass_2 = new XML_Load();
Thread myThread = new Thread(new Runnable() {
@Override
public void run() {
xml = testClass_2.methodInTestClass(this);
runOnUiThread(new Runnable() {
@Override
public void run() {
// ...
}
});
}
});
myThread.start();
}
}[/syntax]
XML_Load.java
[syntax=java5]public class XML_Load extends Fragment {
ListView list;
TestClass_2 adapter;
ArrayList<HashMap<String, String>> itemList = new ArrayList<HashMap<String, String>>();
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
adapter = new TestClass_2(getActivity(), itemList);
}
public String methodInTestClass(Runnable runnable) {
// TODO Auto-generated method stub
return null;
}
}[/syntax]
TestClass_2.java
[syntax=java5]public class TestClass_2 extends BaseAdapter{
public TestClass_2(FragmentActivity activity,
ArrayList<HashMap<String, String>> itemList) {
// TODO Auto-generated constructor stub
}
...
...
[/syntax]
Есть МаинАктивити в которой создается клас XML_Load в котором загружаются данные.
Вызов класса в Thread. Или это без разницы ?
Потом TestClass_2 эти данные использует.
Как сохранить данные что бы при повороте они сохранялись ну и не вылетало прилож.?
А именно - adapter, list, itemList в XML_Load.
Ну и саму ссылку наверно на XML_Load...
Ещё момент - в классе XML_Load создается еще один класс АДАПТЕР (TestClass_2)....
Нужно ли ссылку на него тоже сохранять или если будет ссылка на XML_Load, то он сам должен найти класс TestClass_2 ?
Вообщем ппц - полный !!
Проверку или уже есть данные я потом сделаю.
Пожалуйста, помогите. Вообще мало представляю как что к чему, а сделать надо полюбасу,
поворот нужен однозначно.
Вся надежда на Вас. Заранее спасибо.
MainActivity.java
[syntax=java5]public class MainActivity extends ActionBarActivity {
public static ArrayList<String> mURL = new ArrayList<String>();
XML_Load testClass_2;
Context context;
String xml;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
context = this;
testClass_2 = new XML_Load();
Thread myThread = new Thread(new Runnable() {
@Override
public void run() {
xml = testClass_2.methodInTestClass(this);
runOnUiThread(new Runnable() {
@Override
public void run() {
// ...
}
});
}
});
myThread.start();
}
}[/syntax]
XML_Load.java
[syntax=java5]public class XML_Load extends Fragment {
ListView list;
TestClass_2 adapter;
ArrayList<HashMap<String, String>> itemList = new ArrayList<HashMap<String, String>>();
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
adapter = new TestClass_2(getActivity(), itemList);
}
public String methodInTestClass(Runnable runnable) {
// TODO Auto-generated method stub
return null;
}
}[/syntax]
TestClass_2.java
[syntax=java5]public class TestClass_2 extends BaseAdapter{
public TestClass_2(FragmentActivity activity,
ArrayList<HashMap<String, String>> itemList) {
// TODO Auto-generated constructor stub
}
...
...
[/syntax]