Tag: 数组

“不能分配给属性:”任何“是不可变的”错误

tiledViewsStack包含UIImageViews。 我试图给数组中的每个UIImageView一个新的中心坐标。 不知道为什么我得到这个错误的for循环的最后一行… var tiledViewsStack = [AnyObject]() var randLocInt = Int() var randLoc = CGPoint() for var any in tiledViewsStack { randLocInt = Int((arc4random()*10) % 9) // 0, — 8 randLoc = allCenters[randLocInt].CGPointValue() any.center = randLoc }

NSArray objectAtIndex索引0超出空数组的边界

我正在处理别人的应用程序,而我得到这个错误: 'NSRangeException', reason: '*** -[__NSArrayI objectAtIndex:]: index 0 beyond bounds for empty array' Xcode指向这一行: NSDictionary *geo = [response[0] objectForKey:@"geometry"]; 以下是完整的方法: – (void)loadLatLong { indx ++; if (indx == [datalist count]) { [self showMarker]; // self.alertView.hidden = true; // [self setThreeQuarters]; [self.progressbar setProgress:1.0 animated:YES]; return; } PointClass *pt = datalist[indx]; NSString *stPt = [pt.Location stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSString […]

iOS Swift中:如何存储数组中所有重复值的索引?

举个例子,我有这个数组: let dates = ["01/02/16", "02/02/16", "03/02/16", "01/02/16", "02/02/16"] 我喜欢做的是将每个Stringdate作为关键字存储在字典中,对于每个重复的键,我喜欢将它的索引存储为数组,并将其与重复键相关联。 例如, 01/02/16发生在索引0和3 。 02/02/16发生在指数1和4 。 我喜欢有一个这样的字典: [ "01/02/16": [0, 3], "02/02/16": [2, 4], "03/02/16": [1] ] 我知道如何跟踪有多less重复的条目是这样的: let dates = ["01/02/16", "01/02/16", "02/02/16", "03/02/16"] var dateCounts:[String:Int] = [:] for date in dates { dateCounts[date] = (dateCounts[date] ?? 0) + 1 } for (key, value) in […]

从图像文件夹加载数组 – xcode

我有一些麻烦加载文件中的图像到数组中。 我已经使用了我在这里find的一些问题的组合,并没有想法….我是新的objective-c和其余的生锈。 我的viewDidLoad只是简单地调用我的showPics方法,并为了testing,我有_imgView只显示数组中的位置1的图像。 这也可能是我展示图片的一个问题。 我的故事板中有一个ViewController和一个ImageView(标题为:imgView)。 这里是我的showPics方法: -(void)showPics { NSArray *PhotoArray = [[NSBundle mainBundle] pathsForResourcesOfType:@"jpg" inDirectory:@"Otter_Images"]; NSMutableArray *imgQueue = [[NSMutableArray alloc] initWithCapacity:PhotoArray.count]; for (NSString* path in PhotoArray) { [imgQueue addObject:[UIImage imageWithContentsOfFile:path]]; } UIImage *currentPic = _imgView.image; int i = -1; if (currentPic != nil && [PhotoArray containsObject:currentPic]) { i = [PhotoArray indexOfObject:currentPic]; } i++; if(i < […]

Swiftmultidimensional array

我正在研究一些使用generics的代码。 这是我想要实现的一个例子: var strings: Array<Array<String>> = [["1", "2", "3"], ["4", "5", "6"]] var array: Array<Array<AnyObject>> = strings 但是编译器说“'String'与'AnyObject'不一样”。 我不知道为什么编译器抱怨,以及如何实现我所需要的。 我已经试过像这样: var array: Array<Array<AnyObject>> = strings as Array<Array<AnyObject>> 没有任何成功。 你们有什么想法吗? 谢谢。

在数组中获取最多的NSString

给定一个有几个重复副本的NSString数组: AAA BBB AAA AAA BBB BBB BBB BBB CCC 获取最多发生的string的最简单方法是什么?

从Firebase中检索布尔数组

从Firebase快照中检索一个布尔数组给我0和1。 将Firebase中的布尔数组存储到我的项目中的数组的最佳方式是什么? 这是我的代码: func loadUpInformation() { print("loading data") let user = FIRAuth.auth()?.currentUser let userID = FIRAuth.auth()?.currentUser?.uid ref = FIRDatabase.database().reference() ref.child("users").child(userID!).observeSingleEvent(of: .value, with: { (snapshot) in if !snapshot.exists() { return } if let achievementsUnlockedFirebase = snapshot.childSnapshot(forPath: "/AchievementsUnlocked").value { // ???? } }) } 我已经尝试过了: 从Firebase读取数据并保存到数组(Swift) if let AchievementsUnlockedFirebase = snapshot.childSnapshot(forPath: "/AchievementsUnlocked").value as? Bool { print("snapshot exist") […]

Swift:按照名称(string)按字母顺序将对象数组映射到新数组中的单独的字母集合中

我已经创build了一个名为Contact的结构体,它代表了一个在Array中当前有几个人的联系人。 他们已经按照字母顺序sorting,但是我想按字母顺序排列它们,这是一个string的名称属性,但是我不只是想要在一个数组中排列它们,我想将这些对象分成不同的集合与他们的名字的第一个字母相对应。 例如。 “A”包含2个对象,其中联系人名称以A开头,“B”以Bobby,Brad等名称开头,等等。 let contactData:[Contact] = [ Contact(id: 1, available: true, name: "Adam"), Contact(id: 2, available: true, name: "Adrian"), Contact(id: 3, available: true, name: "Balthazar"), Contact(id: 4, available: true, name: "Bobby") ] 我想创build类似的东西 let sectionTitles = ["A", "B"] let sortedContactData = [ [ Contact(name: "Adam"), Contact(name: "Adrian") ], [ Contact(name:"Balthazar") Contact(name:"Bobby") ] ] 或者类似的… […]

检查一个数组是否包含Swift中另一个元素的所有元素

我想写一个数组的扩展来检查一个数组是否包含另一个数组的所有元素,在我的使用情况下它是string对象,但我一直得到: Cannot convert value of type 'T.Generator.Element' to expected argument type '@noescape _ throws -> Bool' 在行self.contains(item)关于item的错误 这里是我的代码: extension Array { func containsArray<T : SequenceType where T.Generator.Element : Equatable> (array:T) -> Bool{ for item:T.Generator.Element in array{ if !self.contains(item) { return false } } return true } }

致命错误:意外地发现零,而解包可选值(当添加到数组)

我有一些代码从segue接收值,并用我有的索引号replace数组中的某个元素。 variables的初始化是: var noteTitles: [String] = ["Sample Note"] var noteBodies: [String] = ["This is what lies within"] var selectedNoteIndex: Int! var newTitle: String! var newBody: String! 我有一个segue,使最后的3个值,我希望他们的价值观。 在viewDidLoad()下,我有这个: if newTitle == nil && newBody == nil { } else { println("\(newTitle)") println("\(newBody)") println("\(selectedNoteIndex)") let realTitle: String = newTitle let realBody: String = newBody let realIndex: […]