Ich möchte ShareActionProvider
auf ActionBar
, aber mit benutzerdefinierten Look & feel. Nur ein einfaches Share-Icon ohne Grenzen und ohne das meistgenutzte App-Icon rechts. Aber bietet ein Popup-Menü mit den meisten verwendeten Anwendungen. Gibt es einen einfachen Weg, es ohne eigene ShareActionProvider
zu implementieren?ShareActionProvider mit einem Symbol - als einfaches Actionitem
Antwort
OK also unabhängig von ActionBarSherlock zuerst testen, ob Sie Ihre Absicht richtig erstellen, verwendet ABS den gleichen Code wie die generische chooser tut so sehen, ob die App suchen Sie, wenn Sie diesen Code ausführen.
Intent I= new Intent(Intent.ACTION_SEND);
I.setType("text/plain");
I.putExtra(android.content.Intent.EXTRA_TEXT, "My Test Text");
startActivity(Intent.createChooser(I,"Share using ..."));
dieser App Alles, was Klartext behandeln wird sich zeigen, ob Facebook, oder was auch immer Sie erwarten sind, ist nicht da dann nicht diese App die ACTION_SEND Absichtserklärung für den Typ unterstützen Sie sich registriert haben (plain/text). (Facebook tut, aber mehr dazu in einer Minute)
ABS hat ein Beispiel für die Verwendung des Share-Action-Providers, aber es versucht, ein Foto, keine Textnachricht (Statusaktualisierung) das Setup, das Sie verwenden sollten, ist etwas wie diese
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate your menu.
getSupportMenuInflater().inflate(R.menu.share_action_provider, menu);
// Set file with share history to the provider and set the share intent.
MenuItem item = menu.findItem(R.id.menu_item_share_action_provider_action_bar);
ShareActionProvider provider = (ShareActionProvider) item.getActionProvider();
provider.setShareHistoryFileName(ShareActionProvider.DEFAULT_SHARE_HISTORY_FILE_NAME);
// Note that you can set/change the intent any time,
// say when the user has selected an image.
provider.setShareIntent(createShareIntent());
return true
}
und hier ist es die Absicht, die App verwendet wird, entsprechen und sie von der Probe
private Intent createShareIntent() {
Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("image/plain");
Uri uri = Uri.fromFile(getFileStreamPath("shared.png"));
shareIntent.putExtra(Intent.EXTRA_STREAM, uri);
shareIntent.putExtra(Intent.EXTRA_TITLE, "This is an android icon");
return shareIntent;
}
Liste, aber Sie wollen es
seinDies sollte Ihnen die gleiche Liste in ABS geben, wie es in dem kleinen Teststummel, den ich mit der Auswahl oben gezeigt habe.
- 1. ShareActionProvider Aussehen
- 2. Android: AutoCompleteTextView als zusammenklappbare ActionItem Tastatur nicht im Fokus
- 3. Handle ShareActionProvider onClick-Ereignis
- 4. Android-Freigabe - Facebook SDK - ShareActionProvider
- 5. Nur vier Optionen für ShareActionProvider Mit ActionBarSherlock
- 6. Teilen Bild mit ShareActionProvider von Picasso
- 7. COUNTIF mit einem Fragezeichen-Symbol
- 8. URL-Umschreiben mit einem? Symbol
- 9. ShareActionProvider ohne Aktionsleiste in Android
- 10. Größe von ShareAction Icon Problem auf ActionBar mit ShareActionProvider-v7
- 11. AppCompat ShareActionProvider-Symbol ist zu groß im Vergleich zu anderen Symbolen
- 12. Entfernen von YourSelf aus der ShareActionProvider-Liste
- 13. Nicht definiert Symbol: _sf_open (Einfaches Audio-Zeug auf OSX)
- 14. iPhone App-Symbol wird nach einem Projekt als leer angezeigt
- 15. einfaches Abstimmungssystem mit MongoDB
- 16. Handle navigiere von einem Symbol zu einem anderen Symbol.
- 17. Symbol funktioniert als Basis seltsame Symbol erscheint im Fenster
- 18. einfaches Excel-Blatt in C# mit Strings als Eingabe erstellen
- 19. Das Symbol "@" wurde gefunden, als
- 20. € Symbol Rendering als â € "2
- 21. Verständnis Ruby Symbol als Methodenaufruf
- 22. Schema - Wie man "." als Symbol
- 23. ASP.NET MVC Routing mit einem Plus-Symbol
- 24. Cut String vor einem Symbol mit PHP
- 25. Einfaches Sonnensystem mit three.js
- 26. Embed-Symbol neben einem SKLabelNode
- 27. Jedes Symbol als Befehl in LaTeX definieren
- 28. Ember Einfaches Auth & Ember Einfaches Auth Token
- 29. Einfaches Etikett auf einem Flugblatt (Geojson) Polygon
- 30. Einfaches Problem mit subseq (LISP)
Ich weiß, wie Sie ShareActionProvider auch mit ABS erstellen. Aber die Frage war, das Erscheinungsbild von ActionBar zu ändern. Entfernen Sie die Rahmen und entfernen Sie das rechte Symbol - so wird es als einfaches ActionItem aussehen. Bietet jedoch alle zusätzlichen Funktionen (Historie - im Dropdown) – pcu