2016-06-24 3 views
0

Ich arbeite an einem Xamarin.Forms app, wo ich eine FormsApplicationActivity als meine Haupttätigkeit wurde mit und konnte die ActionBar mit einer benutzerdefinierten Ansicht nach innen, um sie anzupassen (I legte eine Spinner darin, für einige Seite)FormsAppCompatActivity und benutzerdefinierte ActionBar/ToolBar

Aber da gibt es ein paar UI war/aussehen und sich anfühlen Fragen ich habe ein Upgrade auf FormsAppCompatActivity. Seit ich das gemacht habe, kann ich meinen Spinner NICHT in der Toolbar/Actionbar bekommen! Egal was ich versuche!

Dies war im Grunde der vorherigen Code, mit FormsApplicationActivity wroking

 var activity = (Activity)this.Context; 
     var bar = activityActionBar; 
     var dlp = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent); 
     bar.CustomView = new Android.Widget.Button(activity) { 
      Text = "Click", 
      LayoutParameters = dlp, 
     }; 
     bar.DisplayOptions = ActionBarDisplayOptions.ShowCustom; 

Was soll ich FormsAppCompatActivity bitte unterstützen schreiben?

Antwort

1

Bei der Verwendung von FormsAppCompatActivity erstellt der NavigationRenderer auf Android intern eine neue Symbolleiste. Es ist ein privates Feld, das ich bisher sehen konnte und auf das ich nicht zugreifen kann.

hier ist der Code: https://github.com/xamarin/Xamarin.Forms/blob/d1a8477233b28e6a20c6f5d4a75128ec2a05e6dc/Xamarin.Forms.Platform.Android/AppCompat/NavigationPageRenderer.cs

Siehe Bild für den spezifischen Codeteil. Ich versuche auch jetzt Zugang zu sehen. Nur eine Anmerkung, die Aktionsleiste, die Sie bearbeiten möchten, ist die falsche. Dieser wird beim Start der Aktivität erstellt.

enter image description here

UPDATE: gefunden vielleicht eine Lösung hier: https://forums.xamarin.com/discussion/69923/access-to-the-formsappcompatactivity-bar

+0

Dank dafür! Ich könnte mal nachsehen ... (Problem ist immer noch da ... hab nur deine Antwort heute gesehen! :)) –