2016-07-15 8 views
-3

Ich will nicht neue Klasse erstellen reicht Fragment, ich will neues Objekt Fragment erstellen:So legen Sie Ansicht in Fragment fest, ohne create class extends Fragment?

Fragment myFrag = new Fragment(); 

Aber wie setzt Hauptansicht (Layout) in meinem myFrag?

Wenn ich Fragment erstreckt sich neue Klasse über die Schaffung ich tun:

public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
    return inflater.inflate(R.layout.login_fragment, container, false); 
} 

Aber in meinem Fall, wie es zu tun?

Kann mir jemand helfen?

Antwort

1

Sie sollten neue Klasse erweitert Fragment erstellen.

Sie können anonyme Klasse verwenden, aber das ist Anti-Muster.

Fragment myFrag = new Fragment() { 
     @Nullable 
     @Override 
     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { 
      return inflater.inflate(R.layout.login_fragment, container, false); 
     } 
    }; 

AndroidStudio zeigt eine Warnung an.

Fragmente sollten statisch so beschaffen sein, dass sie durch das System neu instanziiert werden können, und anonyme Klasse ist nicht statisch

Diese Antwort nützlich sein kann.
https://stackoverflow.com/a/9245510/5183999

Verwandte Themen