Ist es möglich, einen Dialog von Intent aufzurufen? Ich habe zwei Activity RegisterActivity und AuthenticActivity und ich habe benutzerdefinierte Dialog auf RegisterActivity implementiert, aber ich brauche auch den gleichen Dialog auf AuthenticActivity. Wie können wir diesen Dialog auf AuthenticActivity bekommen? Können wir das von Absicht bekommen, bitte schlagen Sie mich vor? Ich möchte keinen Code für beide Aktivitäten schreiben.Aufruf des Dialogs von Intent
Antwort
kurzer awnser: Verwenden Sie einen BroadcastReceiver.
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(ACTION_EXECUTE_EXAMPLE_TEST)) {
//Do whatever you want
}
}
Überprüfen Sie es selbst . Fügen Sie es auf Manifest und dann können Sie die Absicht in Ihren Aktivitäten erhalten;)
Haben Sie eine BaseActivity in der Sie gemeinsamen Code haben, in Ihrem Fall eine öffentliche Methode. Sowohl Ihre RegisterActivity als auch Ihre AuthenticActivity sollten BaseActivity erweitern.
public class BaseActivity AppCompatActivity erstreckt {
public void displayCommonDialog() {
View v = getLayoutInflater().inflate(R.layout.fragment_manage_account_dialog, null);
........ ........
}
}
public class RegisterActivity erstreckt BaseActivity {
........ ......... .........
// Um den Dialog aufzurufen displayCommonDialog();
}
Sie Schnittstelle oder EventBus Bibliothek verwenden können Ereignis auslösen/haben Zuhörer Rückruf die Click-Ereignisse im Dialog zu erfassen.
Stellen statische Konstante Methode wie
public static void showDialog(PASS_REQUIRED_PARAMS){
// do your stuff
}
diese Methode rufen Sie einfach schreiben müssen,
CLASS_NAME.showDialog(PASS_REQUIRED_PARAMS)
- 1. Positionierung des jQuery-Dialogs
- 2. Android Intent Aufruf
- 3. Aufrufmethode des Dialogs von anderer Aktivität
- 4. DialogFragment - Get Breite des Dialogs
- 5. FramGeometry des Minimierten Dialogs (titleBar)
- 6. C# - WPF - Aufruf des Ordner-Browser-Dialogs ohne Verwendung von System.Windows.Forms?
- 7. Aufruf des nativen Freigabe-Dialogs von der Webseite im mobilen Webbrowser?
- 8. Anzeigen des übergeordneten modalen Dialogs mit SWT
- 9. Wie ändert man die Titelhintergrundfarbe des Dialogs?
- 10. Aufruf von PlaceAutocomplete Intent auf OnClickListener von EditText
- 11. vb.net returning string als Ergebnis des Dialogs
- 12. Öffnen des Dialogs "Alle Anlagen speichern"
- 13. Materialize css - Position des Toast-Dialogs ändern
- 14. Graue Schatten beim Schließen des Dialogs
- 15. JavaFX 8 Lokalisierung von internen Elementen des Dialogs
- 16. jQuery wie man Dialog von iframe innerhalb des Dialogs schließt?
- 17. Aufruf einer Klasse durch eine Intent
- 18. Camera Intent nicht zum Aufruf Aktivität
- 19. mdDialog.hide() durch Angabe des Klassennamens des md-dialogs
- 20. Fehler beim Aufruf von Intent in setOnItemClickListener RecyclerView
- 21. Intent ist nicht fertig beim Aufruf von finish()
- 22. Dateien sind nicht wählbar nach dem Aufruf von ACTION_GET_CONTENT Intent
- 23. Aktivierung des Bildschirms durch Intent
- 24. Ändern Sie eine Textansicht innerhalb des aktiven Dialogs?
- 25. ändern Symbol eines Dialogs
- 26. findViewByTag innerhalb eines Dialogs
- 27. Zustand der Umschalttaste beim Abbrechen des Dialogs wiederherstellen
- 28. jQuery UI-Dialog auf Redimensionierung schrumpft den Inhalt des Dialogs
- 29. Android WebView - Wie ändert man die Hintergrundfarbe des WebView-Dialogs?
- 30. "Thread wurde abgebrochen" Ausnahme beim Anzeigen des Dialogs
ein Dialogfeld-Klasse erstellen und verwenden, wo immer u wollen. –
Sie sollten in Betracht ziehen, Ereignisse zu verwenden – Eenvincible
IMO, sollten Sie eine Aktivität für Registrierung und Authentifizierung (LoginActivity) haben, aber das wäre zwei verschiedene Fragmente. Es ist besser, eine andere Klasse für Ihren Dialog zu erstellen (dialogFragment erweitern) und den Dialog wann immer Sie wollen mit etwas wie: new MyDialogFragment(). Show (getFragmentManager(), MyDialogFragment.TAG) –