2014-03-03 58 views
0
public class HomeFragment extends Fragment { 
private ListView listView; 

private ArrayList<MainViewItem> mainViewItems; 
private MainViewListAdapter adapter; 
public HomeFragment(){} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, 
     Bundle savedInstanceState) { 

    View rootView = inflater.inflate(R.layout.fragment_home, container, false); 
    mainViewItems = new ArrayList<MainViewItem>(); 

    return rootView; 
} 

@Override 
public void onStart() 
{ 
    super.onStart(); 

} 

public void initData() 
{ 
    RequestParams params = new RequestParams(); 
    params.put("page", "1"); 

    AsyncHttpClient client = new AsyncHttpClient(); 
    client.get("HTTP://link", params, new AsyncHttpResponseHandler() { 
     @Override 
     public void onSuccess(String response) { 

      Gson gson = new Gson(); 
      JsonParser parser = new JsonParser(); 
      JsonArray jArray = parser.parse(response).getAsJsonArray(); 

      for(JsonElement obj : jArray) 
      { 
       PhotoBoxInfo cse = gson.fromJson(obj , PhotoBoxInfo.class); 
       mainViewItems.add(new MainViewItem(cse)); 
      } 

     } 
    }); 
} 

@Override 
public void onResume(){ 
    super.onResume(); 
} 

@Override 
public void onCreate(Bundle savedInstanceState) 
{ 
    super.onCreate(savedInstanceState); 
    initData(); 
} 

@Override 
public void onActivityCreated(Bundle savedInstanceState) { 
    super.onActivityCreated(savedInstanceState); 
    listView = (ListView) getActivity().findViewById(R.id.PhotoBoxList); 
    adapter = new MainViewListAdapter(getActivity().getApplicationContext(),mainViewItems); 
    listView.setAdapter(adapter); 

     System.out.println(listView); 
     System.out.println(adapter); 

} 

}}(機器人)的滑動菜單來改變片段列表視圖已經

大家好。

我現在試圖創建一個滑動菜單和不同的片段。 所有片段都包含一個列表視圖。

一旦我調試應用程序,它可以從我的數據庫中獲取數據,並且可以顯示在片段視圖中。

但是,一旦我想切換到另一個片段,然後切換回來。

列表視圖消失,無法再顯示。

我有谷歌的問題,也許它是關於/哪些被釋放。

但我仍然不知道....

請幫我...

謝謝

+0

此外,該數據是成功的接受每一次。 我很確定這不是由於網絡問題 – user2875441

回答

0

飾系列我解決它通過自己

public void initData() 
{ 
    RequestParams params = new RequestParams(); 
    params.put("page", "1"); 

    AsyncHttpClient client = new AsyncHttpClient(); 
    client.get("http://", params, new AsyncHttpResponseHandler() { 
     @Override 
     public void onSuccess(String response) { 

      Gson gson = new Gson(); 
      JsonParser parser = new JsonParser(); 
      JsonArray jArray = parser.parse(response).getAsJsonArray(); 

      for(JsonElement obj : jArray) 
      { 
       PhotoBoxInfo cse = gson.fromJson(obj , PhotoBoxInfo.class); 
       mainViewItems.add(new MainViewItem(cse)); 
      } 
      adapter = new MainViewListAdapter(getActivity(),mainViewItems); 
      adapter.notifyDataSetChanged(); 
      listView.setAdapter(adapter); 
     } 
    }); 
} 

這是因爲的異步http請求。

片段重裝,但數據並未收到

我設置的適配器後,接收到的數據