Ich benutze Fragmente in einer Aktivität. Ich verwende MediaRecorder, um Audio aufzunehmen. Ich habe zwei Teile einer Aktivität. 1. selbst die Aktivität, die die aufgezeichnete Datei auflistet. Auf der rechten Seite wird die AudioRecording-Aktivität aufgerufen, wenn eine neue Datei aufgenommen wird. Wenn eine der aufgeführten Dateien ausgewählt ist, verwende ich AudioPlayer, um die aufgenommene Datei abzuspielen Hier kann ich die Aktivität in Fragment umwandeln, aber wenn ich auf Stopp drücke, wird die Anwendung beendet.
Bitte kann jeder antworten. Mein Audiorecorder funktioniert einwandfrei, wenn ich ihn als einfache Aktivität verwende. Eine Lösung, wenn ich die Aktivität in diesem Fragment oder etwas Ähnliches nennen kann .?Bitte helfen Sie mir, wenn jemand weiß.
Holen Sie sich die übergeordnete Aktivität mithilfe der Get-Aktivität und führen Sie sie wie gewohnt aus.
Intent myIntent = new Intent(getActivity(), BookmarkActivity.class);
getActivity().startActivity(myIntent);
Hier ist eine andere alternative Methode. Das hat bei mir funktioniert.
public class **YourFragmentClass** extends Fragment {
Context context; //Declare the variable context
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
//Pass your layout xml to the inflater and assign it to rootView.
View rootView = inflater.inflate(R.layout.**yourfragmentxml**, container, false);
context = rootView.getContext(); // Assign your rootView to context
Button **yourButton** = (Button) rootView.findViewById(R.id.**your_button_id**);
**yourButton**.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
//Pass the context and the Activity class you need to open from the Fragment Class, to the Intent
Intent intent = new Intent(context, **YourActivityClass**.class);
startActivity(intent);
}
});
return rootView;
}
}
Um eine andere activity
von fragment
aufzurufen, verwenden Sie Folgendes:
Intent i = new Intent(getActivity(), Activity.class);
startActivity(i);
In der Fragmentklasse
getActivity().startActivity(new Intent(gwtActivity(),MainActivity.class));
getActivity().finish();
Dein Fragment sollte einen Elternteil haben
Intent intent = new Intent(getActivity(), SecondActivity.class);
getActivity().startActivity(intent);
Sie können einfach anrufen
startActivity(new Intent(getActivity(),TheNextActivity.class));
Die beste Methode, die Activity aus der Fragment-Klasse aufzurufen, besteht darin, die Schnittstelle in Fragment zu erstellen und die onItemClick()
-Methode in dieser Schnittstelle hinzuzufügen. Implementieren Sie es jetzt für Ihre erste Aktivität und rufen Sie von dort aus die zweite Aktivität auf.