muszę nałożyć UINavigationBar
z UIView
jak tutajJak dodać UIView na pasku nawigacji?
http://screencast.com/t/ZKXNFcAzVu & gt; ">
Czy istnieje sposób, aby to zrobić, jednak stosując niestandardowe UIView z przycisku wstecz jak nav bar?
muszę nałożyć UINavigationBar
z UIView
jak tutajJak dodać UIView na pasku nawigacji?
http://screencast.com/t/ZKXNFcAzVu & gt; ">
Czy istnieje sposób, aby to zrobić, jednak stosując niestandardowe UIView z przycisku wstecz jak nav bar?
Możesz dodać podrzędny do widoku bazowego Wniosku
[[[UIApplication sharedApplication] keyWindow] addSubview:vMyCustomUIView];
aby upewnić się, że pojawia się tylko wtedy, gdy kontroler widoku jest widoczny można go dodać i usunąć w metodach delegatów viewDidAppear
i viewDidDisappear
. Oto przykład, który pokazuje zachodzące na siebie niebieskie pole.
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
vTestView = [[UIView alloc] initWithFrame:CGRectMake(10.0f,
10.0f,
100.0f,
100.0f)];
vTestView.backgroundColor = [UIColor blueColor];
}
-(void)viewDidAppear:(BOOL)animated
{
[[[UIApplication sharedApplication] keyWindow] addSubview:vMyCustomUIView];
}
-(void)viewDidDisappear:(BOOL)animated
{
[vMyCustomUIView removeFromSuperview];
}
W swift 2 ... załóżmy nakładkę: UIView = UIView (frame: CGRectMake (0, 0, UIScreen.mainScreen() .bounds.size.width, UIScreen.mainScreen(). bounds.size.height)) overlay.backgroundColor = UIColorFromHex (0x000000, alpha: 0.7) UIApplication.sharedApplication(). keyWindow! .addSubview (overlay) –
Użyj metody:
- (void)bringSubviewToFront:(UIView *)view
Tak więc w Twoim przypadku to będzie:
[navigationBar addSubview:myRibbon];
[navigationBar bringSubviewToFront:myRibbon];
Ponadto nie należy zapominać, że w ten sposób swoją wstążka nie będzie pokazał całkowicie z wyjątkiem sytuacji, gdy to zrobisz:
navigationBar.clipsToBounds = NO;
I ukryj NavigationBar i zamiast tego dodałeś UIView. Wygląda tak samo jak Navbar. następnie dodaj więcej jednego UIView z czerwoną zakładką. Poza tym daje możliwość animowania zakładki na dotyk osobno.
Jeśli dodałem zakładkę w ten sposób: [navigationBar addSubview: myRibbon]; został ukryty na połowie wielkości
Oto Swift 3 odpowiedź
UIApplication.shared.keyWindow?.addSubview(menuView)
Jeśli chcesz zrobić tego rodzaju STUF niż lepiej, że używasz niestandardowego Nawigacja utworzony przez UIView. Niż masz nad nim całkowitą kontrolę i możesz dać to, co kiedykolwiek chcesz dać ... – CRDave