在UITableView的现有Section中添加Single Value

时间:2016-03-03 17:52:38

标签: arrays swift tableview

我有一个tableview,其中包含添加部分的部分,我创建了struct

 struct  datesStruct {
    var sectionYear : String!
    var sectionMonth : [String]!
}

 var datesStructArray = [datesStruct]()

现在我想在检查该部分是否满足我的条件后,在我现有的部分中添加一个值,不知道怎么会这样做?

e.g。 :

 if myTableViewSection1 == 2016{

 //add value  into this section 

 } 

对此进行了大量搜索但未获得任何内容,如果有人知道那么请帮助我谢谢

2 个答案:

答案 0 :(得分:1)

首先,将此功能放在您的课​​程之外(在"课程&#34之前;或在最后一次"之后)":

func == (leftItem: DatesStruct, rightItem: DatesStruct) -> Bool{
    return leftItem.sectionYear == rightItem.sectionYear
}

然后使用:

struct DatesStruct: Equatable{
    var sectionYear : String!
    var sectionMonth : [String]!
}

var datesStructArray = [DatesStruct]()

func addMonthToYear(year: String, month: String){
    if let foundItem: DatesStruct = datesStructArray.filter({$0.sectionYear == year}).first {
        datesStructArray[datesStructArray.indexOf(foundItem)!].sectionMonth.append(month)
    }
}

只需将您要查找的年份和您要添加的月份传递给addMonthToYear

答案 1 :(得分:1)

声明初始值设定项

  struct  datesStruct {
        var sectionYear : String!
        var sectionMonth : [String]!

        init(sectionYear: String!, sectionMonth: [String]!) {
            self.sectionYear = sectionYear
            self.sectionMonth = sectionMonth
        }
    }

var datesStructArray = [datesStruct(sectionYear: "year", sectionMonth: ["month1", "month2"])]

然后检查sectionMonth是否包含所需的字符串