2012-09-03 4 views
0

기본적으로 주 활동 및보기 호출기 프래그먼트가있는 실행기가있는 응용 프로그램이 있으며, 응용 프로그램에서 응용 프로그램을 실행하면 응용 프로그램이 종료 될 때 죽는 것으로 나타났습니다. on fragment function get's를 먼저 호출하여 my on main activity 함수를 작성하십시오.프래그먼트가 응용 프로그램 프로세스가 종료 된 후 생성됨

결국 내 응용 프로그램의 주요 활동을 사용하여 모든 응용 프로그램의 목록을 얻고 다음 각 페이저보기 조각 메인 목록에서 하위 목록을 얻을 것이다 이것은 결국 응용 프로그램이 충돌합니다. 안드로이드가 먼저 주 활동을 생성 한 다음 파편을 생성하기 때문에 앱을 처음 실행하면 올바르게 실행됩니다.

어떻게 해결할 수 있습니까? onCreate Main Activity 함수를 먼저 호출하는 방법이 있습니까? 아니면 더 좋은 방법이 있습니까? 내가 짧은 목록을 만들려고 할 때

응용 프로그램은 불법 인수 예외를 제공하고, 내가 내 응용 프로그램에 반환 할 때 주요 목록에만 주요 활동이 될 작성되기 때문에 주요 목록은 나에게 예외

을 제공 비어 코드 :

`

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

     View view = inflater.inflate(R.layout.grid, null); 

     GridView gridview = (GridView) view.findViewById(R.id.gridview); 

     int starterPosition; 

     starterPosition = 16 * position; 
     int enderPosition = starterPosition + 16; 

     if (enderPosition > appsList.size()) { 
      enderPosition = appsList.size(); 
     } 


     ArrayList<App> shorterList = new ArrayList<App>(appsList.subList(
       starterPosition, enderPosition)); 

     final AppLauncherAdapter grid = new AppLauncherAdapter(ctx, shorterList); 

     gridview.setAdapter(grid); 

     gridview.setSelector(R.color.trans); 


     return gridview; 
    } 

`

답변

2

사용한다 그 onActivityCreated라는 방법이있다 특히이 목적을 위해. onActivityCreatedActivityonCreate 메소드 다음에 항상 호출됩니다.

+0

그래서 주 활동에 onActivityCreated를 사용하고이 함수에서 조각을 처리해야합니다? 그러면 조각에서 onCreate가 먼저 호출되는 것을 피할 수 있습니까? – Steve

+0

'Fragment'는 아마도'Activity'와 너무 많이 상호 작용하지 않아야합니다. 그렇다면'OnActivityCreated'에서 또는 그 후에해야합니다. –

+0

내가 처리 할 필요가있는 모든 코드가 onCreateView 함수이고 내가 거기에서 옮길 수 없다고 생각하는 것이 두려운 것이므로 onActivityCreated를 어떻게 사용할 수 있습니까? 죄송합니다 멍청한 놈에 대한하지만 지금은 좀 잃었습니다 – Steve

관련 문제