Tag: uitabbarcontroller

多个选项卡中的相同视图

我的应用程序有一个UITabBar与四个选项卡…每个都有自己的自定义UIViewController。 其中三个地图加上其他UI元素的共同点,在屏幕上的相同位置..在这些视图中的两个地图是最初隐藏的。 这似乎是更有意义,使这三个视图相同的视图控制器的相同的实例..只是隐藏/显示元素。 是否有可能使用标签栏做到这一点?

从popup的UINavigationController或UITabBarController中确定viewWillAppear

我无法find一种方法来区分从Nav控制器堆栈popup,并从UITabBarController进入视图控制器。 我只想在ViewWillAppear中调用一个方法,只有在TabBar中显示视图,而不是在有人按下导航控制器的时候。 如果我没有使用TabBarController,我可以很容易地使用viewDidLoad获得这个function。 我试过了, override func viewWillAppear(animated: Bool) { super.viewWillAppear(animated) println("View Will Appear") if isBeingPresented() { println("BP") } if isMovingFromParentViewController() { println("from") } if isMovingToParentViewController() { println("to") } } 但是当我按下Tab键或者当按下button时,没有什么区别。 只有“看法会出现”才会被调用。 使用iOS 8.4 / Swift

希望通过在swift中使用swipe gesters在标签栏之间导航

我想要使​​用滑动手势在标签栏控制器之间导航,同时保持默认的标签栏。 我用这个代码,但显示一个错误。 import UIKit class FirstViewController: UIViewController { override func viewDidLoad() { super.viewDidLoad() var leftSwipe = UISwipeGestureRecognizer(target: self, action: Selector("handleSwipes:")) leftSwipe.direction = .Left view.addGestureRecognizer(leftSwipe) } override func didReceiveMemoryWarning() { super.didReceiveMemoryWarning() // Dispose of any resources that can be recreated. func handleSwipes(sender:UISwipeGestureRecognizer) { if (sender.direction == .Left) { let storyboard = UIStoryboard(name: "Main", bundle: nil) let […]

如何正确设置UIViewController的navigationController标题?

我正在尝试下面的代码: – (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { Thing *sub = [[subscriptions objectAtIndex:indexPath.row] retain]; StoriesViewController *thing = [[StoriesViewController alloc] initWithThing:sub]; thing.navigationController.title = sub.title; [self.navigationController pushViewController:thing animated:YES]; [thing release]; [sub release]; [tableView deselectRowAtIndexPath:indexPath animated:YES]; } 我以为这是你如何正确设置标题推控制器。 我尝试了thing.title,但是这是设置TabBarItem的标题,而不是。

以编程方式设置UITabBarItem标题?

我的应用程序基于标签栏体系结构。 为了有一个简单的国际化机制,我不写在XIB文件中的任何string。 viewdidload允许改变视图中string的程序。 当我的应用程序启动时,我可以看到4个选项卡。 但实际上只有第一个加载它的视图控制器。 其他人等待用户点击被加载。 标签标题可以使用[self setTitle:@“Mouhahaha”]; 在viewDidLoad中加载视图控制器。 如果我想保持我的国际化机制可用,我不会在我的XIB中设置tabbar项目的名称。 但是,在开始时,所有标签的视图控制器没有加载,我有一些标签的空白标题。 只有当用户点击选项卡时才会设置正确的标题。 我正在寻找一种方法来为每个tabbaritem设置这个标题programaticaly。 你有提示吗? 非常感谢。 kheraud

如何剪切更大的图像,以适应以编程方式构build的tabBarController中的tabBar图标。

我以编程方式创build了一个选项卡控制器。 现在,我想添加图像到不同的标签,我用它: self.tabBarItem.image = [UIImage imageNamed:@"Sample_Image.png"]; 问题是Sample_image的大小比tab要求的大。 所以只是想知道如何裁剪图像以适应选项卡。

以编程方式在Swift中设置tabBarItem标题

我有四个UIViewControllers链接到UITabBarController的标签栏。 我需要将标签栏项目标题设置在故事板以外,并在其类中。 我试过了.. class MyViewController: UIViewController { required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) self.title = NSLocalizedString(MyConstants.StringKeys.TabName, tableName: Constants.Strings.MyTable, comment: Constants.EmptyString); } } 这被称为,但标题从未设置。 同self.tabBarItem.title =“标题” 我也尝试在viewDidLoad中设置标题,但只是在去视图控制器后更新标题。 思考?

Xcode 8中的UITabbarController在故事板视图中显示一个蓝色矩形

我怎样才能解决这个问题 ? 我根本看不到任何东西。

导航控制器中的标签栏控制器,如何将新的视图控制器推到tabcontroller?

devise要求: 显示用户可以从中select的项目列表 拾取物品后,用户通过后退button进入新的视图。 新视图应该包含底部没有出现在第一个屏幕中的选项卡列表 单击选项卡中的项目时,将出现一个带有后退button的新屏幕,并且标签仍应在底部可见。 单击一个选项卡应使用户将层次结构备份到#2。 不到第一个屏幕。 我尝试过以下结构: UINavigationController 具有UITableView UIViewController 带有UITabBar UIViewController (如http://www.wiredbob.com/2009/04/iphone-tweetie-style-navigation.html ) 并且 UINavigationController 具有UITableView UIViewController UITabbarController 这两种情况都可以正常显示UITabBar ,但是当我点击其中一个标签中的一个项目并推送一个新的UIViewController ,底部的标签就消失了。 我希望标签保持在UITabBarController的选项卡内发生的所有推送的UIViewControllers 。 一个相关的问题是这一个,但它不处理在一个标签内推视图控制器的问题: 导航控制器内的标签栏控制器,或共享导航根视图 我是否需要将根控制器更改为UITabController ? 任何人都实现了这个?

将数据从tableview传递到Swift中的标签栏视图控制器。

在我的故事板,我有一个视图控制器与表视图放置在标签栏控制器之前的一部分。 这个标签栏有两个视图控制器。 早些时候,我已经使用表视图,当我点击一个单元格时,我传递给另一个ViewController加载另一个视图控制器与表和单元格从第一个表中推入单元格的ID。 喜欢这个: 桌面控制器,准备继续: if segue.identifier == "overviewSegue" { var caseViewController: CaseViewController = segue.destinationViewController as CaseViewController var caseIndex = overviewTableView!.indexPathForSelectedRow()!.row var selectedCase = self.cases[caseIndex] caseViewController.caseitem = selectedCase } 这很好。 现在我想要做同样的事情,但唯一的区别是最后一个视图控制器是一个TabBar控制器的一部分。 问题是我不能让它工作传递数据到这个最后的表视图控制器。 我尝试了几件事情,但是我不能将数据指向tabbar表格视图。 Segue的不是平易近人的,目标不是表视图控制器,而是tabbar控制器等。问题是如何通过tabbar控制器将数据从tableview传递到另一个视图控制器。