2016-07-01 4 views
0

im новое для разработки iOS прямо сейчас. Я хочу создать приложение, отображающее представление таблицы из моего массива. Я храню данные JSON в txt-файле на моем сервере. Я хочу получить их через Alamofire и заполнить мои таблицы. В настоящее время я могу это сделать. Об этом много руководства. Но я хочу создать новую таблицу, когда я нажму на эту ячейку. Например, скажем, это мои данные Json;Swift Создание tableView от JSON

{ 
"fruits": [ 
    { 
     "Vitamin": "Vitamin C", 
     "Name": "Apple", 
    } 
    { 
     "Vitamin": "Vitamin B", 
     "Name": "Banana", 
    }  { 
     "Vitamin": "Vitamin D", 
     "Name": "Watermelon", 
    }  { 
     "Vitamin": "Vitamin C", 
     "Name": "Orange", 
    } 
    { 
     "Vitamin": "Vitamin C", 
     "Name": "Mandarin", 
    } 
] } 

И с этим JSon данных я просто хочу, чтобы создать 3 tableviewcells, которые являются витамин С, витамин В и витамин D. Когда я хочу, чтобы нажать Витамин C клетки я хочу видеть новый TableView, который держит яблоко, апельсин, мандарин.

Так что я должен делать для этого? Думаю, на раскадровке мне нужно создать для них несколько контроллеров и несколько быстрых файлов? Должен ли я разбирать данные Json и помещать их в разные массивы? Я открыт для всех предложений или любого руководства, которое я пропустил. Спасибо всем за ваше время

ответ

0

Я хотел бы создать объект и создать, что, когда вы читаете вашу JSON с Alamofire (использовать библиотеку как SwiftyJSON, чтобы получить простые значения из вашего JSON)

Но вы должны изменить JSon A немного, как:

"fruits": [ 
{ 
    "Vitamin": "Vitamin C", 
    "Fruits": ["Apple", "Orange", "Mandarin"] 
} 

Так Витамин С является ваш «ключ» и «Яблоко», «Апельсин», и «Мандарин» ты массив значений.

Теперь вы должны создать объект, как:

class fruits { 
    var vitamin: String! 
    var inFruits: [String]! 
} 

Теперь вы можете добавить некоторые фруктовые объекты, когда вы получаете ваши значения из вашего JSON. О первом TableViewController, просто показывают значения из фруктов, когда вы делаете:

didSelectRowAtIndexPath 

вы должны передать массив inFruits строк в следующей ViewController, как показано здесь:

Sending data with Segue with Swift

+0

Так вы говорите, Я должен сделать это в своем файле. Я собираю эти данные из html-сообщения. Я попробую сделать это в php. –