как да получите падащата текстова стойност в label.text

Използвам това ZHDropDownMenuDelegate библиотека за моята опция за падащ списък. Сега имам две много падащи опции. Например имам падащо меню за държава, щат. Тук по-долу примерен код:

Emenu1.options = ["1","2","3"]

    Emenu2.options = ["1a","2b","3c"]

Сега, използвайки тази функция с два метода, мога да получа коя падаща опция съм избрал:

     func dropDownMenu(menu: ZHDropDownMenu!, didChoose index: Int) {
            print("\(menu) choosed at index \(index)")

            let country : NSString = Emenu1.options .objectAtIndex(index) as! NSString

           ECountryInputName.text = country as String



            let secondmenu : NSString = Emenu2.options .objectAtIndex(index) as! NSString

              IamInputName.text! = secondmenu as String!

            print(IamInputName.text)

}


//编辑完成后回调
    func dropDownMenu(menu: ZHDropDownMenu!, didInput text: String!) {
        // print("\(menu) input text \(text)")
    }

Така че в първото меню, ако избера 1, тогава във второто меню автоматично избира 1a.

Ако избера 2a във второто си меню, тогава в първото меню2 избира автоматично.

Сега как мога да избера опцията си отделно, без да използвам стойността на индекса. Моля, помогнете ми!!

Благодаря


person mack    schedule 06.12.2016    source източник
comment
Трябва да проверите за кой menu избирате в didChoose метод. Може да се наложи да зададете tag за всеки ZHDropDownMenu и след това да го сравните в метода didChoose.   -  person Santosh    schedule 06.12.2016
comment
нов съм в ios, знам как да задавам стойности на тагове. Например за първо меню = 10, второ меню = 20. Можете ли да ми дадете някакъв кодов фрагмент за това как мога да сравня. Защото в тази библиотека ми е много трудно да го разбера   -  person mack    schedule 06.12.2016


Отговори (1)


Задайте tag във вашия storyboard за всяко menu (ZHDropDownMenu) и след това направете по-долу:

func dropDownMenu(menu: ZHDropDownMenu!, didChoose index: Int) {        
    if menu.tag == 0 {
        let country : NSString = Emenu1.options .objectAtIndex(index) as! NSString
        ECountryInputName.text = country as String
    }else if menu.tag == 1 {
        let secondmenu : NSString = Emenu2.options .objectAtIndex(index) as! NSString
        IamInputName.text! = secondmenu as String!
    }
}

И моля, избягвайте да използвате !s, това е един вид приканване на приложението ви да се срине в даден момент. въведете описание на изображението тук

person Santosh    schedule 06.12.2016
comment
Това по избор, трябва да премахна за цялото място или за всяка отделна част?? - person mack; 07.12.2016
comment
Благодаря много за лесния начин. - person mack; 07.12.2016