Swift 3 NSMuttableArray

时间:2016-11-19 13:09:29

标签: nsmutablearray swift3

我很感谢你的帮助。 我宣布新的新空数组:

var cellDescriptors = Any

但是当我尝试在某个地方使用它时,我总是收到相同的错误="键入' any'没有下标成员"。

例如:

var cellDescriptors = [Any]()
var visibleRowsPerSection = [[Int]]()

func loadCellDescriptors() {
if let path = Bundle.main.path(forResource: "CellDescriptor", ofType: "plist") {
cellDescriptors = NSMutableArray(contentsOfFile: path)as AnyObject?
    getIndicesOfVisibleRows()
    tblExpandable.reloadData()

我经常阅读并发现Swift 3.0.1中有一些变化,但我无法理解,我需要做哪些更改来修复它。

我尝试使用以下内容:swift 3: Type 'Any?' has no subscript members

但不幸的是,它不适合我的情况。 试图使用[AnyHashable:Any]。

非常感谢!

1 个答案:

答案 0 :(得分:0)

您尝试下标编译器不知道的内容是<input type="hidden" id="recaptcha-token" value="03AHJ_VuuR2VbfWFbLvWo0XyfL7hkbAy1-t5M21_0SV41kwmq0uJSfQ-JuhImRLjcAJVAUMdNCoVI3mpsfZz2_NpW2LsIyeGMEzkHf1qjCQ_WTWWr4ujJFsbn6TOzY1V01UNliQQVYR-q6Z3sPIN-zlbTp_gMIIHj_2ZGgKWedEki6Cwwt397IELj2mBlntwmd2uV8aTCYnkTiwmhIz7jcChOuBhxZNMToVVuo9-5VnaRmRypmBmXPagU8qa9pCcU_Jml5V0dVuZHNsssrsCG_hsw7foo_UbXvCPXaaZfDoMtJe4XTCMc8toEUtqJJGj1kTU4HhZy6cXCJpcVqTaqqwH8PsZapgDlSxP-CcjbdGxcgaqwyRkhrrcOfrF_qCeGfdw_3osXg652j62lh86ZhPfMldYEwrmvzPWLKwMOCdouTGV3WkNJhWRA"> CollectioncellDescriptors[Any]cellDescriptors[indexPath.section],您正在尝试下标Any

首先,请不要在Swift中使用Any。您需要将NSMutableArray声明为cellDescriptors(又名Array<Array<Something>>),这样当您通过[[Something]]下标一次时,您就会获得indexPath.section(又名{ {1}})。最后,您可以再次下标它以获得Array<Something>。将[Something]更改为您实际处理的任何类型。