2011-12-22 3 views
0

레이아웃에 2 개의 xml 파일 (main.xml)이 있습니다. 하나는 레이아웃 - 랜드에 있습니다. 그 XML에서 나는 listView 있습니다. 그래서 가로 모드에서 응용 프로그램을 실행하고 세로 모드에서 장치를 켜고 나면 제대로 작동하지만 세로 모드로 응용 프로그램을 실행하고 가로 모드로 전환하면 listView의 데이터가 더 이상로드되지 않습니다. 나는 여기서 무슨 문제가 있을지 이해하지 못한다. 조경 -> 초상화는 좋다, 초상화 -> 조경은 나쁘다. 이것에 대한 생각이 있습니까?초상화 및 가로 조언

여기에 데이터를로드하십시오.

public void loadData(final User user) { 
      activity.runOnUiThread(new Runnable() { 
       @Override 
       public void run() { 
        init(user); 
        getUserGroups(user.getSocialAcountByName("way").getSocial_uid(), "way"); 
       } 
      }); 
     } 
+2

어디에서 데이터를로드합니까 (메소드)? Activity 라이프 사이클 문제 일 수 있다고 생각합니다. 몇 가지 코드를 게시 할 수 있습니까? – pablochan

+0

편집 해 주셔서 감사합니다.하지만 정확히 의미하지는 않습니다. 내가 분명하지 않으면 미안해. 즉, 어떤 활동 라이프 사이클 메소드에서 데이터 (onCreate, onStart 등)를로드합니까? 내가 올바르게 기억하면 초상화/풍경으로 바꿀 때 활동이 다시 시작됩니다. – pablochan

+0

나는 onCreate()를 사용합니다. – fish40

답변

2

문제는 활동의 수명주기에 있습니다. onCreate에 데이터를로드하는 경우 작업이 다시 시작될 때마다이 데이터가 손실됩니다 (이 문제는 언제든지 발생할 수 있습니다). 따라서 안전을 위해 데이터로드를 onResume으로 옮기면됩니다.