Eu vi muitos códigos para AppDelegate
classes em RubyMotion que se parecem muito com isto:
class AppDelegate
def application(application, didFinishLaunchingWithOptions:launchOptions)
@window = UIWindow.alloc.initWithFrame(UIScreen.mainScreen.bounds)
@window.rootViewController = UIViewController.new // ...
@window.makeKeyAndVisible
true
end
end
Mas há um pequeno erro neste código. É pequeno, mas ainda está lá e é relativamente difundido também .
O que há de errado com isso? Dê uma olhada na documentação da Apple para UIApplicationDelegate
:
janela
Se desejar fornecer uma janela customizada para seu aplicativo, você deve implementar o método getter desta propriedade e usá-lo para criar e retornar sua janela customizada.
Como corrigi-lo? Simples:
class AppDelegate
attr_reader :window
def application(application, didFinishLaunchingWithOptions:launchOptions)
@window = UIWindow.alloc.initWithFrame(UIScreen.mainScreen.bounds)
@window.rootViewController = UIViewController.new // ...
@window.makeKeyAndVisible
end
end
Isso é pedante? Absolutamente! Mas eu estava coçando minha cabeça tentando usar o CocoaPod MRProgress, e isso depende da janela que está sendo implementada .