美文网首页iOS
iOS SFSafariViewController "

iOS SFSafariViewController "

作者: chouson_chan | 来源:发表于2017-03-10 16:53 被阅读790次

偶然之下接触了一下SFSafariViewController这么个东东,相当于一个浓缩版的safari,点进去看了一下里面的API

- (instancetype)init NS_UNAVAILABLE;
- (instancetype)initWithCoder:(NSCoder *)aDecoder NS_UNAVAILABLE;
- (instancetype)initWithNibName:(nullable NSString *)nibNameOrNil bundle:(nullable NSBundle *)nibBundleOrNil NS_UNAVAILABLE;

- (instancetype)initWithURL:(NSURL *)URL entersReaderIfAvailable:(BOOL)entersReaderIfAvailable NS_DESIGNATED_INITIALIZER;

- (instancetype)initWithURL:(NSURL *)URL;

@property (nonatomic, weak, nullable) id <SFSafariViewControllerDelegate> delegate;

@property (nonatomic) UIColor *preferredBarTintColor NS_AVAILABLE_IOS(10_0);

@property (nonatomic) UIColor *preferredControlTintColor NS_AVAILABLE_IOS(10_0);
@protocol SFSafariViewControllerDelegate <NSObject>
@optional

- (NSArray<UIActivity *> *)safariViewController:(SFSafariViewController *)controller activityItemsForURL:(NSURL *)URL title:(nullable NSString *)title;

- (void)safariViewControllerDidFinish:(SFSafariViewController *)controller;

- (void)safariViewController:(SFSafariViewController *)controller didCompleteInitialLoad:(BOOL)didLoadSuccessfully;

初始化方法、delegate、还有设置一些bar的颜色,基本看完这些东东都知道要干嘛!so,没难度!
然而在我写代码的时候,真的给ta坑了一下。

-(void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
    _saf = [[SFSafariViewController alloc] initWithURL:[NSURL URLWithString:@"http://www.baidu.com"]];
    _saf.delegate = self;
    [self showViewController:_saf sender:nil];
}

我以为这样子就结束了,可是我太天真了,给我的画面却是一片空白

1.png

what😱,我缺少神马了吗?但这里不需要神马啊!iOS9出的东东,难道要设置这个吗?

2.png
结果并不是,然后我设置了提供的两个颜色属性,也是然并卵。
最后我设置他的背景颜色看看究竟,_saf.view.backgroundColor = [UIColor blueColor];结果他终于出现在我面前了。 3.png
你妹的,居然要设置背景色才出现。这家伙肯定欠揍,要给点颜色才行😁
简单分享一下,需要深入的朋友可以自行研究,而我只是想知道这个东东可以做什么而已。据说里面大有文章😏。

相关文章

网友评论

    本文标题:iOS SFSafariViewController "

    本文链接:https://www.haomeiwen.com/subject/atcogttx.html