Tag: swift

WKWebView从本地文档文件夹加载资源

在我的swift iOS应用程序中,我想从远程服务器下载一些dynamichtml页面,保存在文档目录中,并从文档目录中显示这些页面。 我正在使用它来加载页面 var appWebView:WKWebView? … appWebView!.loadRequest(NSURLRequest(URL: NSURL(fileURLWithPath: htmlPath))) 一切工作在模拟器上,但是当我转移到真正的手机,它只是显示一个空白页面。 然后,我使用Safari浏览器连接到应用程序,发现它抱怨“无法加载资源”。 然后我试着先在htmlPath读取页面的内容,然后使用 appWebView!.loadHTMLString() 加载页面。 它在html页面很简单的时候工作。 但是如果html引用别的东西,也就是一个javascript也在文档目录下(带有一个像<script src="file:////var/mobile/Containers/Data/Application/762035C9-2BF2-4CDD-B5B1-574A0E2B0728/Documents/xxxxx.js"> ),将无法加载。 任何人都知道为什么发生这种情况,如何解决这个问题 更多信息: XCode版本:7.3.1 部署目标:8.1(我也尝试使用9.3,没有帮助)

如何在UITableViewRowAction中添加图像?

我试图在UITableView滑动样式中添加图像。 我试着用Emoji文字和它的工作正常 func tableView(_ tableView: UITableView, editActionsForRowAt indexPath: IndexPath) -> [UITableViewRowAction]? { let editAction = UITableViewRowAction(style: .normal, title: "🖋") { (rowAction, indexPath) in print("edit clicked") } return [editAction] } 但我需要图像而不是表情符号,同时我尝试了 editAction.backgroundColor = UIColor.init(patternImage: UIImage(named: "edit")!) 但它得到了重复的图像,我使用了许多格式的图像,如20 * 20,25 * 25,50 * 50,但仍然复制。 我如何添加图片?

WKWebViewfunction用于检测URL是否已经改变

是否有一个WKWebView类的函数,允许您检测该WebView的URL何时更改? 在处理WebView中的某些元素时, didCommit和didStartProvisionalNavigation函数似乎并不总是被触发。 编辑:试图添加一个通知观察员。 这是我到目前为止: extension Notification.Name { static let checkURL = Notification.Name("checkURL") } NotificationCenter.default.post(name: .checkURL, object: nil) NotificationCenter.default.addObserver(self, selector: #selector(getter: webView.url), name: .checkURL, object: webView.url)

错误在Swift类:属性没有在super.init调用初始化 – 如何初始化需要使用self在他们的初始化参数

我重写了一个UITableViewController在Swift中,其中我有两个必需的variables,这是通过使用self的weak引用初始化,因为这些是用来实现UITableViewDataSource协议,并需要self引用,以使用其tableView属性 class VideosListViewController: UITableViewController { required init(coder aDecoder: NSCoder) { super.init(coder: aDecoder) self.datasourceOfflineVideos = ASDataSource(tableViewController: self) self.datasourceOnlineVideos = ASDataSource(tableViewController: self) } // MARK: – Variables var datasourceOnlineVideos:ASDataSource var datasourceOfflineVideos:ASDataSource } 现在的问题是因为它给了我错误Property not initialized at super.init call这是预期的解释在这里: Swift类错误:属性没有在super.init调用初始化 。 Swift的编译器执行四个有用的安全检查,以确保两阶段初始化完成没有错误 安全检查1指定的初始化程序必须确保所有由其类引入的属性在委托给一个超类初始化程序之前进行初始化。 摘录自:苹果公司“Swift编程语言”,iBooks。 https://itunes.apple.com/us/book/swift-programming-language/id881256329?mt=11 所以我的问题是: 如果一个ASDataSource类中的实例variables需要self引用来初始化像ASDataSourcetypes的variables,那我该怎么做? 由于swift不允许我在初始化所有实例variables之前调用super.init()在调用super.init()之前也不允许我在init()的初始化程序中使用self , 目前我正在使用可选variables来解决问题。 但为了学习的目的,我想知道如何做到这一点。 提前致谢 :)

在Swift的AVPlayerViewController中从Youtube播放video

好吧,我正在寻找在我的应用程序中播放电影预告片。 用户将按下button,然后播放video。 我已经添加了import AVKit和import AVFoundation行到我的文件。 这是我迄今为止的video播放代码: @IBAction func playTrailerPressed(sender: AnyObject) { let videoURL = NSURL(string: "https://youtu.be/d88APYIGkjk") let player = AVPlayer(URL: videoURL!) let playerViewController = AVPlayerViewController() playerViewController.player = player self.presentViewController(playerViewController, animated: true) { playerViewController.player!.play() } } 这似乎启动了一个AVPlayerViewController ,但不播放来自YouTube的video。 相反,我得到如下: 我已经尝试从YouTube的共享和embedded链接,但都没有工作。 如果我在最后使用了一个具有video文件名的链接,它会播放它,例如: "https://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4" – 所以我知道代码的作品。 有谁知道这是否可以使用这种方式与YouTubevideo? (我也尝试了IMDb和苹果的预告片,但是它们是一样的)。 谢谢你的帮助!

如何通过点击Swift中的button来打开fb和instagram应用程序

如何通过点击Swift中的button来打开Facebook和Instagram应用程序? 在某些应用程序中,通过点击redirect到Facebook应用程序并打开某个页面。 我如何在Swift中做同样的事情? 我find了, var url = NSURL(string: "itms://itunes.apple.com/de/app/x-gift/id839686104?mt=8&uo=4") if UIApplication.sharedApplication().canOpenURL(url!) { UIApplication.sharedApplication().openURL(url!) } 但在这里我必须知道一个应用程序的URL。 而其他的例子是在ObjC,我根本不知道= /

为栏button项目设置图像和标题?

我目前有一个自定义的导航控制器与栏button项目,只是文本button。 是否可以保留酒吧button项目的标题,但也可以将其设置为图像(图标图像+下面的标题)。 class NavigationController: UINavigationController { var mode: NavigationMode = .Swipe { didSet { self.setButtonAttributes() } } private var leftBarButton: UIBarButtonItem! private var middleBarButton: UIBarButtonItem! private var rightBarButton: UIBarButtonItem! private var rightBarButton2: UIBarButtonItem! override func viewDidLoad() { super.viewDidLoad() } func configureNavigationItem(navigationItem: UINavigationItem) { //Configure the bar buttons text and actions if (self.leftBarButton == nil) { […]

用Google maps iOS sdk在swift中创build自定义信息窗口?

我创build了一个xib和一个视图控制器,并希望在swift中为其显示一个标记的自定义信息窗口。 在互联网上search后,我发现在OBJ-C的老教程,但这不会帮助我。 谢谢。

将图像传递给另一个视图控制器(Swift)

我试图将一个用户上传的图像从一个UIImageView移动到另一个视图控制器上的另一个UIImageView 。 我能够让用户上传一个图像,并保存在第一个UIImageView,但他们按下“后”button后,下一个视图控制器上的UIImageView保持空白。 注意:browsingImage是第二个视图控制器(目标UIImageView)上的UIImageView的名称。 任何帮助将不胜感激! @IBAction func cameraButton(sender: AnyObject) { addNewPicture() } func addNewPicture() { let picker = UIImagePickerController() picker.allowsEditing = true picker.delegate = self presentViewController(picker, animated: true, completion: nil) } func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) { postingImage.image = image self.dismissViewControllerAnimated(true, completion: nil) } @IBAction func postButton(sender: AnyObject) { performSegueWithIdentifier("toBrowsePage", […]

UIPickerView – 循环数据

我目前正在使用Swift开发一个应用程序,我使用UIPickerView,请参阅下面的图像。 目前,当用户滚动到最后的数据时,UIPickerView停止,但是我希望它永不停止。 我希望它可以从第一个数据开始,只需在底部滚动即可。 或者在顶部向上滚动。 我希望它能像苹果倒计时一样,只要你想,就可以上下拖动。 我想如何: 目前如何: