我将一些数据从viewcontroller保存到appdelegate变量并从另一个视图控制器中获取它.Below是app delegate的代码
class AppDelegate: UIResponder, UIApplicationDelegate {
var window: UIWindow?
var navigationController: UINavigationController?
var mainDic:NSMutableDictionary?
Run Code Online (Sandbox Code Playgroud)
用于设置mainDic的代码
func filterResponse(response:NSDictionary){
var appDelegate=AppDelegate()
appDelegate.mainDic=response.mutableCopy() as? NSMutableDictionary
}
Run Code Online (Sandbox Code Playgroud)
用于获取字典的代码.
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
println(appDelegate.mainDic)
Run Code Online (Sandbox Code Playgroud)
问题是我得到的输出为零.请让我正确.
Leo*_*Leo 24
这是你的错误
var appDelegate=AppDelegate() //You create a new instance, not get the exist one
Run Code Online (Sandbox Code Playgroud)
您需要访问现有的AppDelegate
let appDelegate = UIApplication.shared.delegate as! AppDelegate
Run Code Online (Sandbox Code Playgroud)
San*_*ngh 19
Swift 4.0
let appDelegate = UIApplication.shared.delegate as! AppDelegate
let aVariable = appDelegate.value
Run Code Online (Sandbox Code Playgroud)
Swift 3.0
let appDelegate = UIApplication.shared.delegate as! AppDelegate
let aVariable = appDelegate.someVariable
Run Code Online (Sandbox Code Playgroud)
Swift 2.0
let appDelegate = UIApplication.sharedApplication().delegate as! AppDelegate
let aVariable = appDelegate.someVariable
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19860 次 |
| 最近记录: |