getView retourner null lorsque fragment a été créé à partir d'une activité

Je dispose d'une application pour tablette qui je suis maintenant essayer de rendre le travail sur les téléphones aussi.
Sur une table il y a deux fragments sur l'écran une liste de fragment et un détails fragment.
Lorsque sur un téléphone de la liste fragment apparaît et crée une nouvelle activité quand un élément de la liste est pressé.
Cette activité crée simplement le fragment dans le onCreate() méthode et l'engage à l'écran comme suit.

//Place an DeallDetailsFragment as our content pane
DealDetailsFragment f = new DealDetailsFragment();
getFragmentManager().beginTransaction().add(android.R.id.content, f).commit();
getFragmentManager().executePendingTransactions();

Cela fonctionne comme prévu mais à partir de l'intérieur de cette activité, j'ai besoin de dire le fragment quels sont les détails que pour charger et afficher. Dans mon DealDetailsFragment classe j'ai un updateDeal() méthode qui met à jour le contenu comme suit.

if (deal==null) { //could be null if user presses the loading deals list item before it loads
    return;
}
this.deal=deal;
if (dealTitle==null) { //get the view objects only once
    holder = new ViewHolder();  
    holder.dealHeat=(TextView) getView().findViewById(R.id.dealDetails_heat_textView);
    holder.dealPrice=(TextView) getView().findViewById(R.id.dealDetails_price_textView);
    holder.dealRetailer=(TextView) getView().findViewById(R.id.dealDetails_retailer_textView);
    holder.dealTitle=(TextView) getView().findViewById(R.id.dealDetails_title_textView);
    holder.dealDesc=(TextView) getView().findViewById(R.id.dealDetails_desc_textView);
    holder.goToButton= (LinearLayout) getView().findViewById(R.id.dealDetails_goToDeal);
    holder.dealImage=(ImageView) getView().findViewById(R.id.dealDetails_imageView);
    holder.postedBy=(TextView) getView().findViewById(R.id.dealDetails_poster_textView);
    holder.datePosted=(TextView) getView().findViewById(R.id.dealDetails_date_textView);

getView() est de retourner la valeur null lorsque l'application est exécutée sur un téléphone où il n'existe qu'un seul fragment montré.

Des idées? Malheureusement, il n'y a pas beaucoup de fragment exemples disponibles en ligne.

  • À ce point dans le Fragment du cycle de vie est le updateDeal méthode appelée?
  • Lorsque le fragment a été créé et chargé.
  • quelle méthode spécifiquement? onCreate? onCreateView? onStart? onResume?
  • Actuellement dans onCreate. J'ai aussi essayé dans onStart.
  • Consultez la rubrique suivante: stackoverflow.com/questions/14789519/...
InformationsquelleAutor bencallis | 2012-02-28