UINavigationBar का एक उप-वर्ग लिखें जिसमें आप कस्टम ड्राइंग करते हैं और आवश्यकतानुसार सबव्यूव जोड़ते हैं।
तो initWithNavigationBarClass:toolBarClass:
उदा का उपयोग कर इसे initing द्वारा उस वर्ग का उपयोग करने के अपने navigationController बता
@interface MyBar : UINavigationBar
@end
@implementation MyBar
.... //like any UIView
@end
UINavigationController *navi = [[UINavigationController alloc] initWithNavigationBarClass:[MyBar class] toolbarClass:nil];
बजाय
initWithRootViewController
नमूना
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
// Override point for customization after application launch.
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
self.mainViewController = [[FDMainViewController alloc] initWithNibName:@"FDMainViewController_iPhone" bundle:nil];
} else {
self.mainViewController = [[FDMainViewController alloc] initWithNibName:@"FDMainViewController_iPad" bundle:nil];
}
UINavigationController *navi = [[UINavigationController alloc] initWithNavigationBarClass:[UINavigationBar class] toolbarClass:nil];
navi.viewControllers = @[self.mainViewController];
self.window.rootViewController = navi;
[self.window makeKeyAndVisible];
return YES;
}
स्रोत
2013-02-07 09:32:54
मुझे नहीं लगता कि वे कस्टम नेविगेशन पट्टी का उपयोग कर रहे हैं जोड़ने के लिए ... यह सरल छवि है :) – NSCry
वे संभावना .. मैं सहमत नहीं हूं। मेरा जवाब इसके लिए अधिक है .. यह सबसे लचीला है लेकिन मुझे लगता है कि अजीज़ का कोड बेहतर अनुकूल दिखता है। .. हालांकि मुझे पृष्ठभूमि विभाजक के बारे में पता नहीं है –