代码之家  ›  专栏  ›  技术社区  ›  NoCarrier

iphone sdk,在多个视图之间共享数据

  •  2
  • NoCarrier  · 技术社区  · 17 年前

    以下面的例子为例。。

    单个tabBarController在两个视图之间切换,每个视图都由它们自己的视图控制器(比如viewController1、viewController2)处理。

    我有一个名为Widget的类,它的属性为“name”。

    因此,我在view1中有一段代码,它将读取文本字段的内容,并设置我的小部件对象的“name”属性。

    我想让view2中的代码读取小部件对象的“name”属性并显示在某处。

    1.我将在哪里声明我的小部件类的实例?在tabbar控制器中?

    提前谢谢!

    1 回复  |  直到 17 年前
        1
  •  6
  •   Pablo Santa Cruz    17 年前

    您可以将小部件类作为属性放在应用程序委托上。

    @interface youAppDelegate : NSObject <UIApplicationDelegate> {
       Widget *myWidget;
    }
    
    @property (readonly) Widget *myWidget;
    
    @end
    

    完成后,您可以从项目中的任何位置访问myWidget,如下所示:

    youAppDelegate *ad = (youAppDelegate*)[UIApplication sharedApplication].delegate;
    Widget *w = [ad myWidget];