I am building a Test Application in Android, the problem is when I change the orientation of the screen it the fragment is loaded again and the data is gone that is requested from Json.
Here is request code
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String testDetailUrl = "http://www.json-generator.com/api/json /get/cqZnauiJbC?indent=2";
((TrikshaApplication) parentActivity.getApplication()).setTestTime(0);
TaskResponseListener taskResponseListener = new TaskResponseListener();
JsonRequest messageRequest = new JsonRequest(testDetailUrl, testQuestions[].class,
taskResponseListener, taskResponseListener);
uiHandler = new Handler();
arrayList = new ArrayList<String>();
if (!((TrikshaApplication) parentActivity.getApplication()).getCallingFragment().equals("Shiksha")) {
timeLimitLauncher = new TimeLimitLauncher();
}
this.getServiceLocator().getRequestQueue(getActivity()).add(messageRequest);
}
Here is on configuration change code
@Override
public void onConfigurationChanged(Configuration newConfig) {
super.onConfigurationChanged(newConfig);
LayoutInflater inflater = LayoutInflater.from(getActivity());
populateViewForOrientation(inflater, (ViewGroup) getView());
getActivity().setContentView(R.layout.fragment_test_question_ans_layout);
}
private void populateViewForOrientation(LayoutInflater inflater, ViewGroup viewGroup) {
viewGroup.removeAllViewsInLayout();
View subview = inflater.inflate(R.layout.fragment_test_question_ans_layout, viewGroup);
}
Here is the change that I have done in manifest file for activity
android:configChanges="orientation|screenSize|keyboardHidden"
Here is the link of screenshot before orientation change http://s3.postimg.org/gjfws3nxv/Screenshot_2015_06_12_12_08_02.png
After orientation change http://s4.postimg.org/86fgaxrwd/Screenshot_2015_06_12_12_08_08.png
I have made two layouts one for portrait and one for landscape in layout-land folder.