加载NSData到UIWebView

在我的网页浏览器,我想加载一个UIWebView NSURLConnection NSData获得。 当我尝试加载到UIWebView ,而不是该网站,它出现了HTML纯文本。 这是我的代码: 在viewDidLoad: NSURLRequest *request = [NSURLRequest requestWithURL: [NSURL URLWithString:@"http://www.msn.com"]]; [NSURLConnection connectionWithRequest: request delegate:self]; 后来在代码中: -(void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { webdata = [NSMutableData dataWithData: data]; } -(void)connectionDidFinishLoading:(NSURLConnection *)connection { [webview loadData:webdata MIMEType: @"text/html" textEncodingName: @"UTF-8" baseURL:nil]; }

– 只能从主线程调用

这个警告导致了一个严重的问题,因为我真的不能使用Xcode 9 beta 2调用主线程之外的委托。奇怪的是,当我使用Xcode 8.3.3时,这是工作。 我还认为只从主线程调用代表只是一个好习惯,不是吗? 那么为什么这会导致应用程序崩溃呢?

不推荐使用iOS 6 iAd属性和方法

自iOS 6发布以来,有一些iAd属性和方法不推荐使用,如: currentContentSizeIdentifier requiredContentSizeIdentifiers ADBannerContentSizeIdentifierPortrait ADBannerContentSizeIdentifierLandscape 那么现在在两个方向上实现iAd的最好方法是什么? 我们现在应该手动调整横幅视图框架的大小吗?

封闭元组不支持在Xcode9 Swift4中解构

在Xcode 9中的Swift4的光泽项目之后 我得到以下错误,我不知道 封闭元组参数'(key:_,value:_)'不支持解构 码: extension Dictionary { init(elements: [Element]) { self.init() for (key, value) in elements { self[key] = value } } func flatMap<KeyPrime, ValuePrime>(_ transform: (Key, Value) throws -> (KeyPrime, ValuePrime)?) rethrows -> [KeyPrime:ValuePrime] { return Dictionary<KeyPrime, ValuePrime>(elements: try flatMap({ (key, value) in return try transform(key, value) })) } } 此时try flatMap({ (key, […]

GoogleAnalytics-iOS-CocoaPods 0.36与Swift

任何人都知道如何用CocoaPods 0.36编写Swift的桥接头? 我尝试了这些方法。 (1) #import <GoogleAnalytics-iOS-SDK/GAI.h> =>这是cocoapods 0.35风格。 未能编译。 (2) #import <GoogleAnalytics-iOS-SDK/GoogleAnalytics-iOS-SDK/GAI.h> =>编译失败。 (3) #import "../Pods/GoogleAnalytics-iOS-SDK/GoogleAnalytics/Library/GAI.h" =>它可以被遵守。 但连接失败。

iOS – 圆形渐变

我正在画一个圆形的渐变。 let backgroundView:UIView = UIView() let backgroundLayer:CAShapeLayer = CAShapeLayer() let gradient:CAGradientLayer = CAGradientLayer() … backgroundLayer.frame = CGRectMake(0, 0, backgroundDiameter, backgroundDiameter) backgroundLayer.backgroundColor = UIColor.clearColor().CGColor backgroundLayer.strokeColor = backgroundStrokeColor backgroundLayer.fillColor = backgroundFillColor gradient.colors = [UIColor(red: 0.5, green: 0.5, blue: 0.9, alpha: 1.0).CGColor, UIColor(red: 0.9, green: 0.9, blue: 0.3, alpha: 1.0).CGColor] gradient.locations = [0.01, 0.8] gradient.frame = backgroundLayer.frame backgroundView.frame […]

在Swift中获取UIBarButtonItem的框架?

我怎么能迅速获得rightbarbuttonItem的框架? 我发现这个: UIBarButtonItem:我如何find它的框架? 但它说不能将NSString转换为UIView,或不能将NSString转换为string: let str : NSString = "view" //or type String let theView : UIView = self.navigationItem.rightBarButtonItem!.valueForKey("view")//or 'str' 目标是删除rightBarButtonItem,而不是添加一个imageView,并用淡出效果来移动它。 谢谢

后退button奇怪地消失在UINavigationController但继续工作

在iOS7下,我一直在遇到一个问题,如果后退button项目已经设置了特定的背景图像,它将不会显示: int imageSize = 21; //REPLACE WITH YOUR IMAGE WIDTH [[UIBarButtonItem appearance] setBackButtonTitlePositionAdjustment:UIOffsetMake(-400.f, 0) forBarMetrics:UIBarMetricsDefault]; UIImage *barBackBtnImg = [[UIImage imageNamed:@"BackArrowDark.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, imageSize, 0, 0)]; [[UIBarButtonItem appearance] setBackButtonBackgroundImage:barBackBtnImg forState:UIControlStateNormal barMetrics:UIBarMetricsDefault]; 在这样做的时候,我在导航控制器中按下的任何ViewController都不会出现后退button项,即使按下它应该出现的位置,也会使其出现,并且随后按下此视图控制器将会使button出现在屏幕上。 这个问题只在iOS7下出现:在iOS6下,一切正常。 使用leftBarButtonItem完全更改后退button将禁用后向滑动,所以这不是一个选项。 任何想法我做错了什么? 非常感谢您的考虑。

iOS:CGImageCreateWith DataProvider导致分段错误

我正面临一个奇怪的问题。 我正在开发一个使用libzbar的iOS命令行条形码扫描器工具(是的,这是为越狱设备)。 除了当我试图使用CGImageCreateWithPNGDataProvider()或CGImageCreateWithJPEGDataProvider()方法从文件中获取CGImageRef , CGImageRef我的5.1.1 iPad上这两个函数抛出了段CGImageRef ,否则CGImageCreateWithJPEGDataProvider()正常。 这个问题不在我的自定义类ZBarScanner ,因为如果我使用UIImage来获取图像数据, UIImage *uiImage = [UIImage imageWithContentsOfFile:fname]; CGImageRef image = uiImage.CGImage; 那么它工作正常,打印存储在条码中的数据。 此外,PNG和JPEG图像格式良好 – 我可以使用设备上的文件浏览器查看它们,并尝试了其他几种图像。 我甚至试图省略所有的CFRelease()函数调用并release消息,以避免悬挂指针。 这是我的代码: #define LOG() NSLog(@"Reached line %d", __LINE__) int main(int argc, char **argv) { if (argc != 2) return 1; NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; LOG(); // line 21 NSString *fname = […]

如何使用户从Twitter结构ios注销

我做了一个基本的应用程序,使用Twitter的结构,允许用户在我的应用程序内鸣叫,并提供Twitter的login。每件事情都是我想要的。 我的应用如何工作 如果用户没有login到Twitter,我的应用程序允许他login,如果他是login,然后直接让他鸣叫。 现在大部分来了 正如我在许多应用程序中看到的,我可以从应用程序中删除我签名的帐户。而且我无法获得任何方法来帮助我实现这一目标。 我希望允许用户在他/她想要的时候从我的应用程序中的twitter中注销。 我GOOGLE了,但我没有find任何东西 这是我的代码: – (IBAction)LogOut:(id)sender { [[Twitter sharedInstance]logOut]; } – (IBAction)LogMeIn:(id)sender { [[Twitter sharedInstance] logInWithCompletion:^ (TWTRSession *session, NSError *error) { if (session) { NSLog(@"signed in as %@", [session userName]); [LoginButton setTitle:@"LogOut" forState:normal]; } else { NSLog(@"error: %@", [error localizedDescription]); } }]; }