我有一个应用程序,其中有几个视图控制器由标签栏控制器控制.从我想要的其中一个视图控制器(在单击按钮上)转到另一个视图控制器并保留要查看的segued底部的标签栏.
我用过
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"newView"]){
UIViewController *controller =segue.destinationViewController;
controller.modalTransitionStyle = UIModalTransitionStyleFlipHorizontal;
[self presentModalViewController:controller animated:YES];
}
}
Run Code Online (Sandbox Code Playgroud)
这样工作正常,除了从视图到视图中缺少标签栏(占位符在故事板中显示它,但在应用程序运行时它不会显示)我也尝试过更换
[self presentModalViewController:controller animated:YES];
Run Code Online (Sandbox Code Playgroud)
同
[self presentViewController:controller animated:YES completion:nil];
Run Code Online (Sandbox Code Playgroud)
但这也不起作用.
一些调试显示,对于segued-to视图控制器,tabBarController属性设置为nil.
反正有没有保留标签栏在segued-to视图控制器?
什么时候应该调用ReleaseDesignerOutlets自定义的故事板UI类,当它不是a时UIViewController,因此没有ViewDidUnload方法?
FX.我有一个自定义UITableViewCell类,并希望释放我的网点.我可以看到有一种protected void Dispose(bool disposing)方法,但无法弄清楚重写此方法是否是正确的方法.
我正在使用Storyboards.I需要知道我可以设置的最低版本的ios,以便在App商店进行构建和提交.我可以使用ios 4.0作为目标.它将运行在ios 5以下的版本...?有什么解决方案吗?
任何帮助,将不胜感激.
谢谢Vikas
我正在为我的应用实施超时操作。我提到了这个stackoverflow线程, iOS在一段时间不活动(没有用户交互)后执行操作,并且确实采用了完全相同的方法,但是当我的应用程序即将在此处过渡到新的视图控制器时,我的应用程序崩溃了
UIStoryboard *myStoryboard = [UIStoryboard storyboardWithName:@"MainStoryboard" bundle:NULL];
UIViewController *cont = [myStoryboard instantiateViewControllerWithIdentifier:@"abc"];
Run Code Online (Sandbox Code Playgroud)
我在情节提要ID下的情节提要文件中给了名称abc。还有其他方法可以加载视图控制器吗?这有什么问题?为什么我的应用程序崩溃了?
这是来自控制台的崩溃消息:
由于未捕获的异常“ NSInternalInconsistencyException”而终止应用程序,原因:“无法在捆绑包中加载NIB”
我没有与此试图加载的控制器关联的.xib文件。我只有abc.h和abc.m文件。但是在我的情节提要文件中,我有一堆视图控制器,在其中,我将其中一个视图控制器的类指定为“ abc”。这还不够吗?否则,加载视图控制器的最佳方法是什么?使用segue?
我在iOS上遇到了抗锯齿问题.我创建了一个按钮,并将其背景设置为PNG图像.在iPad上,它看起来像这样:

而在故事板上它看起来像这样:

这是我在xcode的属性面板中的设置:

我正在为我的项目使用故事板,我希望有一个UICollectionViewController子类的场景,谁UICollectionView使用UICollectionViewLayout子类.
我在故事板中设置了这个,我正在尝试更改集合视图的布局实例的"自定义类".
这是我在故事板中选择的布局对象的屏幕抓取:
cocoa-touch
ios
uistoryboard
uicollectionview
uicollectionviewlayout
我解决了上面的问题但是当我按照指示执行的步骤时遇到了一个新问题.现在我收到警告说:
Position is ambiguous for "Round Style Text Field"
Run Code Online (Sandbox Code Playgroud)
我也尝试为宽度设置固定约束,但没有修复此警告.
有任何想法吗?我应该为这个问题提供任何其他信息吗?
当我向x添加约束,从底部添加空间约束(对于x)和垂直空间约束时,此屏幕截图.

我只是想为Y设置约束而不是警告,我不管怎么说都不使用autolayout.
编辑:
当我尝试添加缺少的约束时,会发生以下情况:

一瞥这里...... /sf/answers/2431561611/
在iOS中,您在故事板中的Inspector中放置兄弟视图的顺序当然会成为他们的z顺序.
我很惊讶地发现这似乎不适用于容器视图的任何此类视图.
要测试,只需制作一个具有几个兄弟视图的场景; 其中几个是容器视图.跑.在容器视图控制器的类中更改无辜的东西(例如,添加ViewDidLoad,约束或print语句),然后重试.容器视图视图随机移动到顶部.
我发现唯一的解决方法是:在viewWillAppear中手动将它们按顺序放置,这是坚果.
1)可能是我刚搞砸了什么 - 也许有一个设置("尊重故事板顺序 - 即使是容器视图!")
2)我一直在试图弄清楚如何"自动化"变通方法修复.您需要在故事板中加载时阅读所有视图的顺序吗?然后在viewWillAppear时间"修复"它.棘手.
3)可能有一些技巧..在prepareForSegue说?..强迫他们处于正确的Z顺序,就像任何观点一样!??
我刚刚想到了一个荒谬的解决办法.
假设您有一段包含10个兄弟视图的故事板,并说其中4个是容器视图.(所以,它实际上不起作用 - 如此处所述.)
事实上,即使是那四个视图也只是(毫无意义的)普通UIView,它们是容器视图的持有者.吸!
我正在创建一个iOS swift应用程序,我想在用户第一次运行应用程序时显示教程屏幕.稍后,随着应用程序的每次运行,教程应该被隐藏,另一个视图控制器应该是可见的起点.到目前为止,我的故事板看起来像这样:
它包含两个教程屏幕(第一个和最后一个)和标签栏(这是我的应用程序的主窗口).
至于现在,在故事板中我选择了标签栏作为初始视图控制器:
通过这种方法,从未见过教程屏幕.如何在首次启动应用程序中仅显示一次,然后在每次用户打开应用程序时跳过它?
我有一个父视图,其高度必须由其子内容决定.
如何在没有以编程方式改变它的情况下在故事板中实现这一点.
ios uistoryboard autolayout nslayoutconstraint ios-autolayout
uistoryboard ×10
ios ×8
xcode ×3
objective-c ×2
swift ×2
autolayout ×1
cocoa-touch ×1
ios7 ×1
ipad ×1
minimum ×1
version ×1
xamarin.ios ×1
xcode5 ×1