Può un frammento estendere un'attività di frammento?

Ho creato una MainActivity che consiste di 3 tabs scorrebili (utilizzando ViewPager). Adesso ognuna di queste 3 tabs è un frammento. Inoltre, sto utilizzando ActionBarSherlock (ABS).

Per il primo frammento, ho creato la seguente class:

  • WebView non riesce a rendere fino a toccare Android 4.2.2
  • SearchView rimuove la linea di messa a fuoco blu e mostra il cursore in una certa posizione
  • HandlerThread vs Executor - Quando è uno più appropriato rispetto all'altro?
  • Come rifiutare / chiudere un numero specifico di ingresso
  • Come posso scrivere il mio menù di context per copiare e incollare?
  • Imansible distriggersre APK accidentalmente caricato su Prod
  • public class Fragment_1 extends SherlockFragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO Auto-generated method stub View v = inflater.inflate(R.layout.fragment1, container, false); return v; /* R.layout.fragment1 only contains a TextView. */ } } 

    Per il secondo frammento, voglio estendere una FragmentActivity come mostrato di seguito.

     public class Fragment_2 extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.fragment2); } } 

    Il terzo frammento è lo stesso del primo.

    Ma quando lancio l'applicazione, si blocca. Quindi, mi sbaglio nell'estensione di FragmentActivity per la class Fragment_2? È illegale estendere una FragmentActivity o addirittura un'attività a classi di frammentazione? Altrimenti, qual è il problema qui?

    Grazie.


    EDIT: Dopo la risposta di @ CommonsWare ho aggiornato la mia class come segue:

     public class Fragment_2 extends SherlockFragment { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Button send = (Button) findViewById(R.id.bSend); //Error at this line //some error free code FragmentTransaction t = getSupportFragmentManager().beginTransaction(); //Error at this line } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { // TODO Auto-generated method stub View v = inflater.inflate(R.layout.fragment2, container, false); return v; } 

    Le mie ultime due domande sono:

    1. Come posso accedere al mio button R.id.bSend nella class Fragment_2.
    2. Eclipse sta fornendo il suggerimento di cambiare getSupportFragmentManager () per getFragmentManager (). È cambiato bene?

    Grazie!

  • Job Scheduler non è in esecuzione su Android N
  • Riposizionare il timer in android
  • Xamarin.Android: come catturare gli events del button definiti nell'attributo XML OnClick?
  • PhoneGap - performance nette rispetto al browser su Android
  • Come get la latitudine e la lunghezza del dispositivo mobile in android?
  • getCurrentTextColor da un TextView restituisce un colore strano
  • One Solution collect form web for “Può un frammento estendere un'attività di frammento?”

    È illegale estendere una FragmentActivity o addirittura un'attività a classi di frammentazione?

    Fragment è una class Java. Le implementazioni del frammento (da utilizzare come pagine nel tuo ViewPager ) devono ereditare da Fragment , direttamente o indirettamente.

    Activity non eredita da un Fragment . FragmentActivity non eredita da Fragment . Di conseguenza, non è ansible ereditare da Activity o FragmentActivity e in qualche modo anche ereditare da Fragment .

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.