Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 其他uiviewcontroller上未显示UIAbbarController_Iphone_Objective C_Uinavigationcontroller_Uitabbarcontroller - Fatal编程技术网

Iphone 其他uiviewcontroller上未显示UIAbbarController

Iphone 其他uiviewcontroller上未显示UIAbbarController,iphone,objective-c,uinavigationcontroller,uitabbarcontroller,Iphone,Objective C,Uinavigationcontroller,Uitabbarcontroller,我的应用程序有一个包含UITabBarController和tabBar的第一页。 但是当我将视图控制器推到UINavigationController时,我的UITabBarController不显示 appdelegate: self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]]; anasayfaViewController * firstTab= [[anasayfaViewControl

我的应用程序有一个包含
UITabBarController
tabBar
的第一页。 但是当我
将视图控制器
推到
UINavigationController
时,我的
UITabBarController
不显示

appdelegate:

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
duyuruViewController *duyuru = [[duyuruViewController alloc] initWithNibName:@"duyuruViewController" bundle:nil];
sikayetViewController *sikayet = [[sikayetViewController alloc] initWithNibName:@"sikayetViewController" bundle:nil];
digerViewController *diger = [[digerViewController alloc] initWithNibName:@"digerViewController" bundle:nil];

self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[firstTab,sehirRehberi,duyuru,sikayet,diger];
        navigationController=[[UINavigationController alloc]initWithRootViewController:self.tabBarController];

self.window.rootViewController = self.navigationController;
// [self.window addSubview:self.navigationController.view];
[self.window makeKeyAndVisible];

return YES; 
firstTab viewcontroller具有按钮并单击事件:

-(void)btnClick:(id)sender
{
    [self.navigationController pushViewController:haberler animated:NO];
}

当我单击
UIViewController
时,它将打开,但不显示
uitabarcontroller
。我怎样才能解决这个问题

您有
uitabarcontroller
作为
UINavigationController
的rootViewController。和
UINavigationController
作为应用程序的根控制器。相反,您必须将
uitabarcontroller
设置为应用程序的根控制器,并在每个选项卡中添加
UINavigationController


检查答案。

您的
UINavigationController
是您的
UINavigationController
的rootViewController。和
UINavigationController
作为应用程序的根控制器。相反,您必须将
uitabarcontroller
设置为应用程序的根控制器,并在每个选项卡中添加
UINavigationController


检查答案。

首先,您需要创建一个包含所有视图控制器(导航控制器)的数组,如

您需要将Winodw的
Rootviewcontroller
设置为
[self.window setRootViewController:tabBarController]不是Navigationcontroller

作为您的代码示例:-< /P>

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
UINavigationController *navigationController1 = [[UINavigationController alloc] initWithRootViewController:firstTab];

SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
UINavigationController *navigationController2 = [[UINavigationController alloc] initWithRootViewController:sehirRehberi];

duyuruViewController *duyuru = [[duyuruViewController alloc] initWithNibName:@"duyuruViewController" bundle:nil]; 
UINavigationController *navigationController3 = [[UINavigationController alloc] initWithRootViewController:duyuru];

sikayetViewController *sikayet = [[sikayetViewController alloc] initWithNibName:@"sikayetViewController" bundle:nil];
UINavigationController *navigationController4 = [[UINavigationController alloc] initWithRootViewController:sikayet];

digerViewController *diger = [[digerViewController alloc] initWithNibName:@"digerViewController" bundle:nil];
UINavigationController *navigationController5 = [[UINavigationController alloc] initWithRootViewController:diger];


self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[navigationController1,navigationController2,navigationController3,navigationController4,navigationController5];

 [self.window setRootViewController:tabBarController];
 [self.window makeKeyAndVisible];

return YES; 
更新:-

如果您想
TabbarController
在单击按钮时添加NextViewcontroller,则可以使用以下不同方式:-

例如,当应用程序lonch和it
login
按钮单击时,您需要按下视图控制器,并且该视图控制器包含这些选项卡栏

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
    LoginViewcontroller *objLogin = [[LoginViewcontroller alloc] initWithNibName:@"LoginViewcontroller" bundle:nil];
    self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];


     self.window.rootViewController = self.navigationController;
     [self.window makeKeyAndVisible];
     return YES;
}
在loginViewcontroller登录按钮操作中:-

-(IBAction)LoginSuccess
{

    anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
    UINavigationController *navigationController1 = [[UINavigationController alloc] initWithRootViewController:firstTab];

    SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
    UINavigationController *navigationController2 = [[UINavigationController alloc] initWithRootViewController:sehirRehberi];

    duyuruViewController *duyuru = [[duyuruViewController alloc] initWithNibName:@"duyuruViewController" bundle:nil]; 
    UINavigationController *navigationController3 = [[UINavigationController alloc] initWithRootViewController:duyuru];

    sikayetViewController *sikayet = [[sikayetViewController alloc] initWithNibName:@"sikayetViewController" bundle:nil];
    UINavigationController *navigationController4 = [[UINavigationController alloc] initWithRootViewController:sikayet];

    digerViewController *diger = [[digerViewController alloc] initWithNibName:@"digerViewController" bundle:nil];
    UINavigationController *navigationController5 = [[UINavigationController alloc] initWithRootViewController:diger];


    self.tabBarController = [[UITabBarController alloc] init];
    self.tabBarController.viewControllers = @[navigationController1,navigationController2,navigationController3,navigationController4,navigationController5];

  [self.navigationController pushViewController:self.tabBarController animated:YES];

}

第一件事是,您需要创建一个包含所有视图控制器(导航控制器)的数组,如

您需要将Winodw的
Rootviewcontroller
设置为
[self.window setRootViewController:tabBarController]不是Navigationcontroller

作为您的代码示例:-< /P>

self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];

anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
UINavigationController *navigationController1 = [[UINavigationController alloc] initWithRootViewController:firstTab];

SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
UINavigationController *navigationController2 = [[UINavigationController alloc] initWithRootViewController:sehirRehberi];

duyuruViewController *duyuru = [[duyuruViewController alloc] initWithNibName:@"duyuruViewController" bundle:nil]; 
UINavigationController *navigationController3 = [[UINavigationController alloc] initWithRootViewController:duyuru];

sikayetViewController *sikayet = [[sikayetViewController alloc] initWithNibName:@"sikayetViewController" bundle:nil];
UINavigationController *navigationController4 = [[UINavigationController alloc] initWithRootViewController:sikayet];

digerViewController *diger = [[digerViewController alloc] initWithNibName:@"digerViewController" bundle:nil];
UINavigationController *navigationController5 = [[UINavigationController alloc] initWithRootViewController:diger];


self.tabBarController = [[UITabBarController alloc] init];
self.tabBarController.viewControllers = @[navigationController1,navigationController2,navigationController3,navigationController4,navigationController5];

 [self.window setRootViewController:tabBarController];
 [self.window makeKeyAndVisible];

return YES; 
更新:-

如果您想
TabbarController
在单击按钮时添加NextViewcontroller,则可以使用以下不同方式:-

例如,当应用程序lonch和it
login
按钮单击时,您需要按下视图控制器,并且该视图控制器包含这些选项卡栏

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{

    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease];
    LoginViewcontroller *objLogin = [[LoginViewcontroller alloc] initWithNibName:@"LoginViewcontroller" bundle:nil];
    self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];


     self.window.rootViewController = self.navigationController;
     [self.window makeKeyAndVisible];
     return YES;
}
在loginViewcontroller登录按钮操作中:-

-(IBAction)LoginSuccess
{

    anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
    UINavigationController *navigationController1 = [[UINavigationController alloc] initWithRootViewController:firstTab];

    SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
    UINavigationController *navigationController2 = [[UINavigationController alloc] initWithRootViewController:sehirRehberi];

    duyuruViewController *duyuru = [[duyuruViewController alloc] initWithNibName:@"duyuruViewController" bundle:nil]; 
    UINavigationController *navigationController3 = [[UINavigationController alloc] initWithRootViewController:duyuru];

    sikayetViewController *sikayet = [[sikayetViewController alloc] initWithNibName:@"sikayetViewController" bundle:nil];
    UINavigationController *navigationController4 = [[UINavigationController alloc] initWithRootViewController:sikayet];

    digerViewController *diger = [[digerViewController alloc] initWithNibName:@"digerViewController" bundle:nil];
    UINavigationController *navigationController5 = [[UINavigationController alloc] initWithRootViewController:diger];


    self.tabBarController = [[UITabBarController alloc] init];
    self.tabBarController.viewControllers = @[navigationController1,navigationController2,navigationController3,navigationController4,navigationController5];

  [self.navigationController pushViewController:self.tabBarController animated:YES];

}

您应该尝试使用我下面的代码片段

anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
    UINavigationController *firstNav = [[UINavigationController alloc] initWithRootViewController:firstTab];

    SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
    UINavigationController *secondNav = [[UINavigationController alloc] initWithRootViewController:sehirRehberi];

// object for tabbarviewcontroller
self.tab.viewControllers = [NSArray arrayWithObjects:firstNav,secondNav,nil];
我已经向您展示了tabbarcontroller中两个选项卡的示例。您可以根据需要定制


享受编程

您应该尝试使用我下面的代码片段

anasayfaViewController * firstTab= [[anasayfaViewController alloc] initWithNibName:@"anasayfaViewController" bundle:nil];
    UINavigationController *firstNav = [[UINavigationController alloc] initWithRootViewController:firstTab];

    SehirRehberiViewController *sehirRehberi = [[SehirRehberiViewController alloc] initWithNibName:@"SehirRehberiViewController" bundle:nil];
    UINavigationController *secondNav = [[UINavigationController alloc] initWithRootViewController:sehirRehberi];

// object for tabbarviewcontroller
self.tab.viewControllers = [NSArray arrayWithObjects:firstNav,secondNav,nil];
我已经向您展示了tabbarcontroller中两个选项卡的示例。您可以根据需要定制


享受编程

您想在选项卡栏控制器中使用导航控制器吗?此时,您的视图正好相反,因此新视图被推到选项卡上bar@Leta0nhaberler是UIViewControllera您是否希望在选项卡栏控制器中安装导航控制器?此时,您的视图正好相反,因此新视图被推到选项卡上bar@Leta0n哈伯勒是UIVIEW控制员谢谢你回答瓦兰丁。但当我点击按钮时,我可以在哪里按下ViewController?那么哪个navigationController呢?您可以从一个选项卡中的navigationController推送新的控制器。谢谢您回答Valantin。但当我点击按钮时,我可以在哪里按下ViewController?那么哪个navigationController呢?您可以从一个选项卡中的navigationController中推送新的控制器。@Erhan Demirci现在检查这里,我从应用程序lonch tabbarcontroller中输入两种方法,然后单击Tabbar controller按钮,希望这对您有所帮助。@Erhan Demirci现在检查那里,我从应用程序lonch tabbarcontroller中输入两种方法,然后单击Tabbar controller按钮点击Tabbar控制器,希望这对您有所帮助。