我在我的项目中使用了一个SDCAlertView实例,在警报中添加一个UITextView来做一些facebook帖子。它似乎在ios8上不再正常工作。
我使用了以下代码。
SDCAlertView *alert = [[SDCAlertView alloc] initWithTitle:@"Post To Facebook"
message:@""
delegate:nil
cancelButtonTitle:@"Cancel"
otherButtonTitles:@"Post", nil];
UITextView *textView = [[UITextView alloc] init];
[textView setTranslatesAutoresizingMaskIntoConstraints:NO];
[textView setEditable:YES];
textView.autocorrectionType = UITextAutocorrectionTypeNo;
[alert.contentView addSubview:textView];
[textView sdc_pinWidthToWidthOfView:alert.contentView offset:-5];
[textView sdc_pinHeight:120];
[textView sdc_horizontallyCenterInSuperview];
[textView sdc_verticallyCenterInSuperviewWithOffset:SDCAutoLayoutStandardSiblingDistance];
[alert showWithDismissHandler: ^(NSInteger buttonIndex) {
NSLog(@"Tapped button: %@", @(buttonIndex));
if (buttonIndex == 1) {
NSLog(@"POST %@", textView.text);
}
else {
NSLog(@"Cancelled");
}
}];
iOS 7上的结果
iOS 8 GM的结果
如果我可以通过代码中的某些更改来解决此问题,请告诉我。
答案 0 :(得分:1)
我设法通过替换以下行来解决此问题
[textView sdc_verticallyCenterInSuperviewWithOffset:SDCAutoLayoutStandardSiblingDistance];
以下内容:
[alert.contentView sdc_pinHeight:120 + SDCAutoLayoutStandardSiblingDistance];
[textView sdc_alignEdgesWithSuperview:UIRectEdgeTop insets:UIEdgeInsetsMake(SDCAutoLayoutStandardSiblingDistance, 0, 0, 0)];
如果有人想要详细介绍此讨论,请访问以下链接 https://github.com/sberrevoets/SDCAlertView/issues/49