2017-11-03 1 views
4

enter image description hereIst es möglich, ein Fragment zu haben, das nicht in der Tab-Leiste ist?

Im Moment habe ich fünf Fragmente (Tabs) in meiner App, wie das Bild zeigt. Und sie sind alle als Mitglieder der Tab-Leiste in der MainActivity.java aufgeführt

public class MainActivity extends AppCompatActivity implements InputTab.SendMessage, FollowingTab.SendMessage, FollowerTab.SendMessage, ProfileTab.SendMessage { 

    private SectionsPageAdapter pageAdapter; 
    ViewPager viewPager; 
    public static String currentUser; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 

     FragmentManager fragmentManager = getSupportFragmentManager(); 
     FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); 
     fragmentTransaction.replace(R.id.container, new ProfileTab()); 

     fragmentTransaction.commit(); 

     pageAdapter = new SectionsPageAdapter(getSupportFragmentManager()); 

     // Sets up the ViewPager with the sections adapter 

     viewPager = (ViewPager) findViewById(R.id.container); 
     setupViewPager(viewPager); 

     TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs); 
     tabLayout.setupWithViewPager((viewPager)); 

    } 

    // Adds fragments to SectionsPageAdapter and gives names for the corresponding tab 

    private void setupViewPager(ViewPager viewPager) { 
     SectionsPageAdapter adapter = new SectionsPageAdapter(getSupportFragmentManager()); 
     adapter.addFragment(new InputTab(), "Search"); 
     adapter.addFragment(new ProfileTab(), "Profile"); 
     adapter.addFragment(new GithubTab(), "Github Repos"); 
     adapter.addFragment(new FollowerTab(), "Followers"); 
     adapter.addFragment(new FollowingTab(), "Followings"); 
     viewPager.setAdapter(adapter); 
    } 

Da ich eine Suche Register implementiert, ich frage mich, ob es möglich, eine andere Seite (oder das Fragment) zu erstellen, die das Ergebnis der Displays Suche, und wenn ich auf das Ergebnis klicke, möchte ich direkt zu den entsprechenden Tabs (Profil für Benutzer und Github Repos für Reposuche) gelangen.

Kurz gesagt, wie kann ich eine Seite erstellen, die nicht Teil der Registerkarte ist und sie immer noch anzeigen, wenn ich die Schaltfläche "Suchen" drücke?

Antwort

0

Implementieren Sie Ihr TabLayout und ViewPager innerhalb eines Fragments anstelle der Aktivität und ersetzen Sie dieses Fragment durch das Ergebnisfragment.

+0

Also, nichts geht in die MainActivity? – Dawn17

+0

Nur ein FrameLayout, um die Fragmente zu enthalten (Eins mit dem Viewpager und dem Ergebnisfragment). – UdeshUK

+0

Also hätte die MainActivity nur eine leere Implementierung? – Dawn17

Verwandte Themen