我是iOS的新手,在编写iOS8的hello world Today扩展时遇到了2个问题。我尝试使用模板创建一个简单的今天扩展,它运行良好。
但是,如果我尝试了以下其中一项,则小部件不会显示在今日应用中(我的扩展名只有一个,但没有正文):
删除" hello world"带有模板的标签,并添加1个新标签" hello world 2&#34 ;;我注意到如果我这样做,约束也会被自动删除。
取消选中"使用自动布局"在今日视图控制器的故事板中,创建UILabel的属性并链接到storyboard中的标签,然后在viewDidLoad上的标签上调用setText:
TodayViewController.m:
@interface TodayViewController () <NCWidgetProviding>
@property (nonatomic, weak) IBOutlet UILabel *cityLabel;
@end
@implementation TodayViewController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view from its nib.
[self _updateTodayView];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (void)widgetPerformUpdateWithCompletionHandler:(void (^)(NCUpdateResult))completionHandler {
// Perform any setup necessary in order to update the view.
[self _updateTodayView];
// If an error is encountered, use NCUpdateResultFailed
// If there's no update required, use NCUpdateResultNoData
// If there's an update, use NCUpdateResultNewData
completionHandler(NCUpdateResultNewData);
}
- (void) _updateTodayView {
[[self cityLabel] setText:@"Hello World 3"];
}
@end
我已经在Windows上开发多年了,我很惭愧被这个问题阻挡了一整天。
我的环境:
OS X Yosemite。
Xcode 6.1