SVWebViewController is a simple inline browser for your iOS 7 app.
SVWebViewController features:
- iPhone and iPad distinct UIs
- full landscape orientation support
- back, forward, stop/refresh and share buttons
- Open in Safari and Chrome UIActivities
- navbar title set to the currently visible web page
- talks with
setNetworkActivityIndicatorVisible
I'm not a big fan of CocoaPods, so tend to not keep it updated. If you really want to use SVWebViewController with CocoaPods, I suggest you use pod 'SVWebViewController', :head
to pull from the master
branch directly. I'm usually careful about what I push there and is the version I use myself in all my projects.
Add this line to your Cartfile
:
github "keslcod/SVWebViewController"
- Drag the
SVWebViewController/SVWebViewController
folder into your project. #import "SVWebViewController.h"
(see sample Xcode project in /Demo
)
Just like any UIViewController, SVWebViewController can be pushed into a UINavigationController stack:
SVWebViewController *webViewController = [[SVWebViewController alloc] initWithAddress:@"http://google.com"];
[self.navigationController pushViewController:webViewController animated:YES];
It can also be presented modally using SVModalWebViewController
:
SVModalWebViewController *webViewController = [[SVModalWebViewController alloc] initWithAddress:@"http://google.com"];
[self presentViewController:webViewController animated:YES completion:NULL];
Starting in iOS 6 Apple uses UIActivity
to let you show additional sharing methods in share sheets. SVWebViewController
comes with "Open in Safari" and "Open in Chrome" activities. You can easily add your own activity by subclassing SVWebViewControllerActivity
which takes care of a few things automatically for you. Have a look at the Safari and Chrome activities for implementation examples. Feel free to send it as a pull request once you're done!
SVWebViewController is brought to you by Sam Vermette and contributors to the project. If you have feature suggestions or bug reports, feel free to help out by sending pull requests or by creating new issues. If you're using SVWebViewController in your project, attribution is always appreciated.