我有一个视图控制器子类,SignInViewController用于登录,可能随时需要.而不是让我的应用程序中的每个视图控制器都听取需要登录的通知,我宁愿让应用程序代理执行此操作.
但是如何从我的应用代表中触发它呢?
我把它SignInViewController放在我的主要故事板中吗?如果是这样,我如何从我的应用代表访问我的故事板?还是其他一些方法更好?
我正在使用Xcode并对我的故事板进行更改......没问题.现在,我获得了故事板的源代码,但没有获得故事板图像!
当我右键单击storyboard文件时,我没有看到"Interface Builder - IOS Storyboard"作为选项.
有人发生过这种情况吗?
我真的很喜欢将我的所有视图都放在故事板中,但有时我会根据代码生成的按钮显示一个视图,这样就没有Segue参考 - 它将完全断开连接故事板.我仍然想在故事板中设计它,所以我可以对我的所有屏幕有一个很好的概述.
当加载UIViewControler时,我是否可以加载故事板中设计的XIB(或故事板中的任何内容)?
您好,我正在编写一个应用程序,当使用本地通知打开它时,该应用程序应响应UI更新和内部状态更改.我正在使用故事板,我已经设置了我的主视图控制器来观察状态变化:
- (void)viewDidLoad
{
[super viewDidLoad];
// ...
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(resumeByNotification:) name:@"Resume" object:nil];
}
Run Code Online (Sandbox Code Playgroud)
在我的app委托中,我有这个:
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
if (application.applicationState == UIApplicationStateInactive)
{
[[NSNotificationCenter defaultCenter] postNotificationName:@"Resume" object:self userInfo:notification.userInfo];
}
}
Run Code Online (Sandbox Code Playgroud)
这很好用:如果应用程序在后台运行,视图控制器将拦截通知并做出相应的反应.(如果应用程序在前台运行,则会被忽略,因为UI正在直接处理.)
当应用程序被杀死并收到通知时会出现问题.我已经在didFinishLaunchingWithOptions方法中编写了这个,让手机振动成为一种快速的调试技术:),我确实得到了通知:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
UILocalNotification *localNotification = launchOptions[UIApplicationLaunchOptionsLocalNotificationKey];
if (localNotification)
{
[[NSNotificationCenter defaultCenter] postNotificationName:@"Resume" object:self userInfo:localNotification.userInfo];
AudioServicesPlaySystemSound(kSystemSoundID_Vibrate);
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
电话会振动,因此通知就在那里,但它似乎没有触发观察者.我想这是因为尚未调用视图控制器的didViewLoad方法.我不知道如何解决这个问题.我想我可以使用UIStoryboard的instantiateViewControllerWithIdentifier:方法来确保视图控制器实际存在,但除了最终将由故事板自己的生命周期实例化之外,我不会得到它的"额外"实例. ?从课堂参考文献中的内容来看,这并不意味着要做这种事情.
我错过了一些非常明显的东西吗?事实上,对于这种情况,我的方法是正确的吗?
谢谢!
我有一个ApplicationDelegate实现的协议.我想将它传递给故事板中定义的第一个视图控制器.如何从该方法访问它?
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
Run Code Online (Sandbox Code Playgroud) 我现在开始使用Xcode for 4.2 for iOS5,并且有一些变化,我现在正在解决一个我无法找到解决方法的问题.
我正在用UITablwView做一个例子,它以2个部分编程填充,第1部分只有1行,第2部分有3行.
我的目标是从表中选择一行,并根据该行,用户将被重定向到不同的视图.
例如:选择第0行第0行,app推送查看1 - 名称设置//选择第1行第0行,app推送查看3 - 地址设置
旧方式,这很简单,只需要用initWithNibName初始化一个UIViewController,然后推送视图.
现在随着storyBoard一切都发生了变化,或者至少我认为它发生了变化,因为我无法看到如何获得相同的结果,因为我无法将tableView中的多个segue设置为不同的UIViewControllers ...并且做旧的时尚方式我无法看到我可以从storyBoard上的视图中获取NIB名称以初始化UIViewController来推送.
有没有人知道如何得到这个结果?
我和佩德罗在这里有同样的问题,但对答案不满意,因为已经有了奖励和奖励,我创造了这个问题,我会尽快添加赏金.
我想在代码中创建或操作segue(以黄色突出显示),以便主视图是MFMasterViewController(以红色突出显示)的多个子类中的任何一个.
做这个时使用笔尖我可以创建一个笔尖,
SharedNib.xib和设置类的MFMasterViewController,然后创建我的子类,比方说MFMasterViewControllerSubclassA,MFMasterViewControllerSubclassB等和然后实例化我想要使用哪个子...Run Code Online (Sandbox Code Playgroud)MFMasterViewControllerSubclassA *controller = [[MFMasterViewControllerSubclassA alloc] initWithNibName:@"SharedNib" bundle:nil];要么...
Run Code Online (Sandbox Code Playgroud)MFMasterViewControllerSubclassB *controller = [[MFMasterViewControllerSubclassB alloc] initWithNibName:@"SharedNib" bundle:nil];等等
关于如何使用故事板来解决这个问题的任何线索?
我不能在Pedro的问题上使用提供的答案,我的子类扩展超出了数据源和委托.
我查看了苹果开发人员的一些国际化文档和视频,但我从未找到过该问题的明确答案.在苹果的教程,我看到Base.lproj旁边的文件夹en.lproj和zh.lproj-范例翻译(本地化)是从英语到中国.但他们告诉我,有一个文件en.lproj/myStoryboard.strings,这是令人困惑的.我无法看到为故事板创建英语本地化的重点(已经是英文版).
Base.lproj/myStoryboard.storyboard?Base.lproj/myStoryboard.storyboard,永远都会依赖en.lproj/myStoryboard.strings"吗?换句话说:
假设用户的语言不可用,我希望我的应用程序以英语显示,但我的Base.lproj/myStoryboard.storyboard是瑞典语.那么我是否必须将Base Storyboard本地化并将Base故事板中的sv.lproj/myStoryboard.strings所有字符串翻译成英语才能完成此操作?
现在,我有一个工作区,里面有两个项目,一个叫"ProjectOne",另一个是"ProjectTwo",如下所示:
他们分别有一个故事板,现在我想通过按下"To Project Two"连接两个故事板,如下所示:
但当我点击按钮时,它会显示出来
"因未捕获的异常而终止应用程序'NSInvalidArgumentException',>原因:'无法在捆绑包中找到名为'two'的故事板NSBundle 8C6A5FDC9E06/ProjectOne.app>(已加载)'"
有可能吗?我寻求这种方法几天但也不知道......
我在我的项目中使用GoogleMaps Pod.我的故事板中有错误:
错误:IB Designables:无法呈现和更新MapViewController的自动布局状态:dlopen(GoogleMaps.framework,1):找不到合适的图像.找到了:GoogleMaps.framework:mach-o,但文件类型错误
我已将视图类设置为GMSMapView:
应用程序正在模拟器上工作.我该如何解决这个错误?它导致整个故事板为空白.
uistoryboard ×10
ios ×7
ios5 ×4
xcode ×4
cocoa-touch ×1
ipad ×1
localization ×1
storyboard ×1
uiview ×1