开发者社区> 问答> 正文

如何在新的swift文件中通过swift覆盖延迟加载dataArr?

我在学习Swift. 我在iOS应用程序项目中创建了第一个快速文件。 快捷文件是一个子类。敏捷父亲班是AO目标-c级. In the objective-c file.m, I use a lazy array;

就像这样:

- (NSArray *)dataArr{
    if(_dataArr == nil){
            NSDictionary *dic1 = @{@"title":@"dog1",
                       @"message":@"the dog1"
};
NSDictionary *dic2 = @{@"title":@"dog2",
                       @"message":@"the dog2"
};
NSDictionary *dic3 = @{@"title":@"dog3",
                       @"message":@"the dog3"
};
         _dataArr = @[dic1, dic2, dic3];
    }
    return _dataArr;
}

在OC文件中,我使用dataArr若要设置tableView内容,请执行以下操作。

由于我的新的快速文件是像OC的父亲文件,除了数组的内容。

我希望重写数组,使快速文件表视图显示新内容。

我的快速文件代码是这样的:

class testSwift: theOCFatherClass {

   override func viewDidLoad() {

          let dic1:Dictionary = ["title":"dog1",
                                      "message":"the dog1"
                                      ];
              let dic2:Dictionary = ["title":"dog2",
                                      "message":"the dog2"
                                      ];
              let dic3:Dictionary = ["title":"dog3",
       "message":"the dog3"]

       func getdataArray() -> Array<Any>{
                return [dic1, dic2, dic3]
              }

       var dataArr = getdataArray()

       super.viewDidLoad()
   }
}

我点击我的iPhone上的快速页面,快速文件的内容是我的OC数组。

我的问题是如何覆盖dataArr通过斯威夫特在新的斯威夫特档案。

如果你愿意,请写一个好例子。

展开
收起
游客5akardh5cojhg 2019-12-11 21:30:15 581 0
1 条回答
写回答
取消 提交回答
  • 据我所知,您可以覆盖一个惰性的Object-C属性,如

    @property (readonly, nonnull) NSArray<NSDictionary<NSString*,NSString*> *> *dataArr;
    
    

    只有SWIFT中的计算属性

    class TestSwift: theOCFatherClass { 
    
        lazy var swiftDataArray = [["title":"cat1", "message":"the cat1"], ["title":"cat2", "message":"the cat2"], ["title":"cat3", "message":"the cat3"]]
    
        override var dataArr : [[String:String]] {
           return swiftDataArray
        }
    
        override func viewDidLoad() { ... }
    
    }
    
    2019-12-11 21:31:37
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关课程

更多

相关电子书

更多
OpenStack Swift 海量小文件优化之路 立即下载
From Java/Android to Swift iOS 立即下载
Swift在Airbnb的应用实践 立即下载