Meine App unterstützt iOS8 + -Geräte. Ich möchte die rechte Aktionsschaltfläche in der Navigationsleiste ausblenden. Durch Forschung fand ich folgende paar Abhilfen:Gültige Methode zum Ausblenden von QLPreviewController RightBarButtonItem/RightBarButtonItems Xamarin iOS
1. erstellen Sub-Klasse von QLPreviewController und in ViewDidAppear SetRightBarButtonItems auf Null.
public class PdfViewController : QLPreviewController
{
public override void ViewDidAppear (bool animated)
{
base.ViewDidAppear (animated);
NavigationItem.SetRightBarButtonItems (new UIKit.UIBarButtonItem[0], false);
}
}
In diesem Fall Problem RightBarButtonItem erscheint und verschwindet dann. Während Benutzer in der Lage ist, auf die RightBarButtonItem-Schaltfläche zu klicken. Ich will dieses Verhalten nicht.
2. UIViewController erstellen und QLPreviewController als Kind Viewcontroller hinzu.
Leere BtnShowPdf_Clicked (object sender, EventArgs e) {
var dummyVC = new UIViewController();
var pdfVC = new PdfViewController();
dummyVC.AddChildViewController (pdfVC);
dummyVC.View.AddSubview (pdfVC.View);
dummyVC.NavigationItem.SetRightBarButtonItems (new UIBarButtonItem[0], false);
dummyVC.EdgesForExtendedLayout = UIRectEdge.None;
dummyVC.AutomaticallyAdjustsScrollViewInsets = false;
dummyVC.View.BackgroundColor = UIColor.Clear;
pdfVC.EdgesForExtendedLayout = UIRectEdge.None;
pdfVC.AutomaticallyAdjustsScrollViewInsets = false;
pdfVC.View.BackgroundColor = UIColor.Clear;
}
In diesem Fall Wenn ich gesetzt QLPreviewController es funktioniert wie erwartet. Aber NavigationBar wird dunkler als Standard-ViewController-Hintergrundfarbe.
dunkle Bar: http://screencast.com/t/bqVMv5qqGz
benötigt klaren Hintergrund Bar wie: http://screencast.com/t/MUwE2VnxJ7
Meine Fragen sind:
A) Ich möchte wissen, was der richtige Weg ist, richtig zu verbergen Navigationsleiste Taste nach Apple-Richtlinien? Wenn Sie die richtige Lösung haben, werden diese auch geschätzt.
B) Auch können Sie bitte Lösung (en) für # 1 oder # 2 vorschlagen?