Страница 1 из 1

Cохранить, восстановить данные при повороте(Fragment,Thread)

Добавлено: 04 июн 2014, 23:37
AlexVinn
Помогите разобраться как сделать правильно поворот экрана.
Есть МаинАктивити в которой создается клас 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]

Re: Cохранить, восстановить данные при повороте(Fragment,Thr

Добавлено: 05 июн 2014, 10:39
KamiSempai
Ни чего себе у вас переплетение фрагмента и активити, еще чуть чуть и сюжет "Игр престолов" переплюнете.
Подумайте и перенесении methodInTestClass в Активити или отдельный класс, который не связан ни с фрагментом ни с активити.
Если это не возможно то нужно делать фрагмент как можно более независимым. Используйте слушатели.