So ändern Sie das fragment mit der Unteren Navigation Aktivität?
Erstellte ich ein neues Projekt mit dem "Bottom-Navigation Aktivität":
https://gyazo.com/f5efaecffd5adfd05e512921d3b8a19d
Dies ist der generierte code:
package com.aaron.waller.mrpolitik;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.BottomNavigationView;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private TextView mTextMessage;
private BottomNavigationView.OnNavigationItemSelectedListener mOnNavigationItemSelectedListener
= new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
switch (item.getItemId()) {
case R.id.navigation_home:
mTextMessage.setText(R.string.title_home);
case R.id.navigation_dashboard:
mTextMessage.setText(R.string.title_dashboard);
case R.id.navigation_notifications:
mTextMessage.setText(R.string.title_notifications);
}
return true;
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextMessage = (TextView) findViewById(R.id.message);
BottomNavigationView navigation = (BottomNavigationView) findViewById(R.id.navigation);
navigation.setOnNavigationItemSelectedListener(mOnNavigationItemSelectedListener);
}
}
Wie kann ich ändern, um neue Fragmente, die mit der Unteren Leiste?
Ich habe zum Beispiel 3 Fragmente:
Fragment1
Fragment2 und
Fragment3
Und ich will zu ändern, um Sie mit den 3 buttons der Unteren Leiste.
Auch möchte ich, dass ich wechseln kann und die Fragmente durch streichen meine finger Links und rechts wie kann ich das tun?
P. S
Im neuen Android Studio.
Über die swipe-Aktion: Mit Wisch-gesten auf den content-Bereich nicht wechseln zwischen den Ansichten überprüfen Sie die design-Richtlinien von der Unteren Navigation auf material.io/Leitlinien/Komponenten/...
InformationsquelleAutor TheUseracc awd | 2017-03-29
Du musst angemeldet sein, um einen Kommentar abzugeben.
Die Art, wie ich es tun würde, würde ich zuerst fügen Sie drei Methoden ähnlich wie diese (jede für ein einzelnes fragment. Ersetzen Sie den Namen des Layouts und fragment-Objekt, um das entsprechende fragment wird eingeschaltet):
Damit Ihre switch-Anweisung würde am Ende Aussehen wie diese:
Als für die Umschaltung der Fragmente durch Streifen an den Seiten, ich glaube, Sie wäre eine ViewPager.
Hoffe, das hilft. 😀
Jedes mal, wenn neues fragment wird erzeugt. Nicht so gut.
InformationsquelleAutor Abdel Rahman
Es ist ziemlich "einfach".
FragmentA
,FragmentB
undFragmentC
mitFragmentA
wird das erste Fragment wollen wir auf die BottomNavigationView.In Ihrer Aktivität, gehen Sie auf die
onNavigationItemSelected
Methode und ändern Sie den Inhalt dieser:In Ihrem
onCreate()
Methode, dies zu tun:Wenn Sie nicht hinzufügen
FragmentA
imonCreate()
, die Aktivität ist leer, wenn Sie zuerst starten Sie es.Wenn Sie sich Fragen, was
R.id.content
bezieht, es ist die Id des Framelayout in der activity das layout. Es enthält zunächst eineTextView
löschen Sie die TextView so wie es aussieht dieses:Schließlich
ft
undcurrentFragment
werden wie folgt definiert:Nicht sicher über Eleganz, aber dies funktioniert.
InformationsquelleAutor ojonugwa ochalifu
Der beste Weg ist die Verwendung eines
ViewPager
mit einemFragmentPagerAdapter
. Da kassiert die Fragmente im inneren. VerwendensetOnNavigationItemSelectedListener
mit derBottomNavigationView
zu hören, für die Klicks des Benutzers. Und verwendenviewPager.setCurrentItem(..)
zwischen den Seiten zu wechseln.Erstellen Sie ein neues fragment jedesmal, wenn der Benutzer klickt auf ein Element in der unteren navigation Ansicht ist auch keine gute Lösung (vor allem, wenn der Benutzer auf das Element auf dem Bildschirm, derzeit ist er bei der Lösung der oben erstellen Sie ein neues fragment auch für diesen Fall)
Abed, können Sie bitte geben Sie einige Beispiel-code?
nicht eine gute Lösungen ist es nicht möglich zu deaktivieren, streichen Sie auf viewpager leicht
InformationsquelleAutor Abed Almoradi
InformationsquelleAutor Vivek Shah
verwenden Sie dieses
InformationsquelleAutor Iqbal Suzetta