2012-01-31 91 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

希望这会有帮助