Почему "я" используется вне класса?
Я следую этому руководству на GitHub о том, как реализовать SwiftyDropbox в приложении для iOS. Там есть пункт, где он говорит мне, чтобы добавить этот код в мой ViewController
import UIKit
import SwiftyDropbox
func myButtonInControllerPressed()
{
DropboxClientsManager.authorizeFromController(UIApplication.shared, controller: self, openURL: { (url: URL) -> Void in UIApplication.shared.openURL(url)})
}
Я тогда получаю сообщение об ошибке
Use of unresolved identifier 'self'
Предположительно, это потому, что я объявляю функцию вне класса. Что я делаю неправильно? Кто-нибудь знает учебник / пример приложения, которое действительно работает и в курсе последних версий Swift и Xcode, которые могут научить меня, как использовать SwiftyDropbox?
1 ответ
Абзац перед этим фрагментом
Вы можете начать поток авторизации, вызвав
authorizeFromController:controller:openURL:browserAuth
метод в контроллере представления вашего приложения.
Так что он говорит вам написать этот фрагмент ВНУТРИ вашего View Controller (где используется self
имеет смысл).
Вот пример
class Controller: UIViewController {
func myButtonInControllerPressed() {
DropboxClientsManager.authorizeFromController(UIApplication.shared,
controller: self,
openURL: { (url: URL) -> Void in
UIApplication.shared.openURL(url)
})
}
}