2012-01-31 81 views
0

我不知道我可以在哪裏放置代碼來啓動一個片段。我有一個觀看片段的人,但他們什麼都不做。例如:哪裏在片段中開始代碼?

我有類fragmentosactivity這就是inicialize德片段:

public class FragmentosActivity extends FragmentActivity { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     requestWindowFeature(Window.FEATURE_INDETERMINATE_PROGRESS); 
     super.setContentView(R.layout.fragmentos_layout); 

     // Paginador 
     this.inicializaPaginas(); 
     //ActionBar 
     ActionBar actionBar = getSupportActionBar(); 
     actionBar.setTitle("Contoles"); 
     //CirculoProgreso 
     setProgressBarIndeterminateVisibility(Boolean.FALSE);  

    } 

    //Este metodo inicia todos los fragments 
    private void inicializaPaginas() {  

     FragmentAdapter adapter = 
        new FragmentAdapter(getSupportFragmentManager()); 
      adapter.addFragment(new Mapa()); 
      adapter.addFragment(new Cercanos()); 

      ViewPagerAdapter vadapter = new ViewPagerAdapter(this); 

      ViewPager pager = 
       (ViewPager)findViewById(R.id.viewpager); 
      TitlePageIndicator indicator = 
       (TitlePageIndicator)findViewById(R.id.indicator); 
      pager.setAdapter(adapter); 
      pager.setAdapter(vadapter); 
      indicator.setViewPager(pager); 

    } 

} 

在這裏,我呼籲cercanos.class 而在cercanos我有

public class Cercanos extends ListFragment { 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    if (container == null) { 
     return null; 
    } 

    return (LinearLayout) inflater.inflate(R.layout.cercanos, container, false); 

} 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    String[] objetos = {"hola","adios"}; 
     setListAdapter(new ArrayAdapter<String>(getActivity(), 
       android.R.layout.simple_list_item_1, objetos)); 

     Parseador.anadedatos(); 
     } 

}

但從來沒有進入cercanos的onCreate方法,爲什麼?我認爲我不明白所有碎片的使用。

回答

1

這就是所謂的只在主要活動中,而不是在視圖

public class XXX extends Activity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
.... 
} 
} 

的onCreate是應用程序生命週期的一個片段,而不是類或視圖生命週期

0

你可以嘗試重寫此方法:

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

並將onCreate代碼放在這裏。

無論如何,你可以看看文檔,因爲片段沒有setContentView,是在xml佈局中,你告訴哪些片段控制佈局。 http://developer.android.com/guide/topics/fundamentals/fragments.html

希望這會有幫助