【问题标题】:iOS5 - sharekit for twitter issueiOS5 - 用于 Twitter 问题的共享工具包
【发布时间】:2012-01-25 20:42:02
【问题描述】:

我在仅适用于 iOS5 的 sharekit 中遇到键盘问题。在将文本内容发布到 twitter 时。

.我附上了我遇到问题的屏幕截图 1.取消按钮不起作用 2.键盘没有消失。

如果有人解决了这个问题,请帮助我。

【问题讨论】:

    标签: iphone objective-c ios5 twitter uikeyboard


    【解决方案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 框架和帐户添加为可选库。

    【讨论】:

      【解决方案2】:

      在 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 框架和帐户添加为可选库。

      【讨论】:

        猜你喜欢
        • 2014-04-28
        • 1970-01-01
        • 2014-08-20
        • 2016-07-13
        • 1970-01-01
        • 2012-03-20
        • 2015-03-05
        • 2023-04-11
        • 1970-01-01
        相关资源
        最近更新 更多