【发布时间】:2012-01-25 20:42:02
【问题描述】:
我在仅适用于 iOS5 的 sharekit 中遇到键盘问题。在将文本内容发布到 twitter 时。
.我附上了我遇到问题的屏幕截图 1.取消按钮不起作用 2.键盘没有消失。
如果有人解决了这个问题,请帮助我。
【问题讨论】:
标签: iphone objective-c ios5 twitter uikeyboard
我在仅适用于 iOS5 的 sharekit 中遇到键盘问题。在将文本内容发布到 twitter 时。
.我附上了我遇到问题的屏幕截图 1.取消按钮不起作用 2.键盘没有消失。
如果有人解决了这个问题,请帮助我。
【问题讨论】:
标签: iphone objective-c ios5 twitter uikeyboard
编辑:
修复问题 #254 - IOS 5 取消按钮修复问题 https://github.com/ideashower/ShareKit/issues/254.
在 iOS 5 中,模态呈现的视图控制器有一个 nil parentViewController,而不是演示者 呈现视图控制器。更改了关闭视图的尝试 使用 parentViewController 检查 iOS 5 选择器,以及 如果有的话就用它。
所以获取最新的 ShareKit。
编辑 2:
如果设备有 iOS 5,我建议使用 TWTweetComposeViewController。
Class TWTweetComposeViewControllerClass = NSClassFromString(@"TWTweetComposeViewController");
if (TWTweetComposeViewControllerClass != nil) {
if([TWTweetComposeViewControllerClass respondsToSelector:@selector(canSendTweet)]) {
UIViewController *twitterViewController = [[TWTweetComposeViewControllerClass alloc] init];
[twitterViewController performSelector:@selector(setInitialText:)
withObject:NSLocalizedString(@"TwitterMessage", @"")];
[twitterViewController performSelector:@selector(addURL:)
withObject:url];
[twitterViewController performSelector:@selector(addImage:)
withObject:[UIImage imageNamed:@"yourImage.png"]];
[self.navigationController presentModalViewController:twitterViewController animated:YES];
[twitterViewController release];
}
} else {
[SHK flushOfflineQueue];
SHKItem *item = [SHKItem URL:url title:NSLocalizedString(@"TwitterMessage", @"")];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionSheet showInView:[self.view superview].window];
}
在你的h文件中添加
#if defined(__IPHONE_5_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_5_0
#import <Twitter/Twitter.h>
#import <Accounts/Accounts.h>
#endif
并将 Twitter 框架和帐户添加为可选库。
【讨论】:
在 wiki 中也可以找到 Alex Terente 的答案。
编辑1:
修复问题 #254 - IOS 5 取消按钮修复问题 https://github.com/ideashower/ShareKit/issues/254。 在 iOS 5 中,模态呈现的视图控制器有一个 nil parentViewController,而呈现器是 呈现视图控制器。更改了关闭视图的尝试 使用 parentViewController 检查 iOS 5 选择器,以及 如果有的话就使用它。 所以获取最新的 ShareKit。
编辑 2: 如果设备有 iOS 5,我建议使用 TWTweetComposeViewController。
Class TWTweetComposeViewControllerClass = NSClassFromString(@"TWTweetComposeViewController");
if (TWTweetComposeViewControllerClass != nil) {
if([TWTweetComposeViewControllerClass respondsToSelector:@selector(canSendTweet)]) {
UIViewController *twitterViewController = [[TWTweetComposeViewControllerClass alloc] init];
[twitterViewController performSelector:@selector(setInitialText:)
withObject:NSLocalizedString(@"TwitterMessage", @"")];
[twitterViewController performSelector:@selector(addURL:)
withObject:url];
[twitterViewController performSelector:@selector(addImage:)
withObject:[UIImage imageNamed:@"yourImage.png"]];
[self.navigationController presentModalViewController:twitterViewController animated:YES];
[twitterViewController release];
}
} else {
[SHK flushOfflineQueue];
SHKItem *item = [SHKItem URL:url title:NSLocalizedString(@"TwitterMessage", @"")];
// Get the ShareKit action sheet
SHKActionSheet *actionSheet = [SHKActionSheet actionSheetForItem:item];
// Display the action sheet
[actionSheet showInView:[self.view superview].window];
}
在你的 h 文件中添加
#if defined(__IPHONE_5_0) && __IPHONE_OS_VERSION_MAX_ALLOWED >= __IPHONE_5_0
#import <Twitter/Twitter.h>
#import <Accounts/Accounts.h>
#endif
并将 Twitter 框架和帐户添加为可选库。
【讨论】: