![](/img/trans.png)
[英]How can I change numberOfRowsInSection when I have multiple TableViews?
[英]How can I display multiple TableViews from a Json File in Swift?
我想要做的是將我的信息從Json文件顯示到Xcode(Swift)上的TableView中。 這是我想要的一個例子:
我想從國家,城市和城市的一些附加信息中檢索我的json數據。 在第一個屏幕中,我想在TableView中顯示國家/地區的名稱:
然后,當我在一個國家(例如美國)的單元格中clic時,我想打開一個包含來自USA的所有州(或城市)的新TableView。 所以我在美國clic,我在第二個屏幕上有以下信息:
最后,當我在某個州(或城市)陳詞濫調時,例如在紐約,我希望從我選擇的州(紐約州)中顯示一些附加信息。 所以在第三個屏幕中我有:
“紐約是一個很棒的城市......等等”
我想從一個tableview到另一個tableview navegate,所以我不知道如何為每個tableview添加屏幕頂部的“后退”按鈕。 我希望在不同的單元格中顯示國家和城市,因此我可以對它們進行陳述並顯示信息。
這是我的json示例:
[
{
"country": "Brazil",
"city": [
"Sao Paulo",
"Rio de Janeiro"
]
},
{
"country": "Germany",
"city": [
"Berlin",
"Frankfurt"
]
},
{
"country": "France",
"city": [
"Paris",
"Marselle"
]
},
{
"country": "USA",
"city": [
"Florida",
"New York",
"California",
"Nevada"
]
},
{
"country": "Argentina",
"city": [
"Buenos Aires",
"Mendoza",
"La Plata"
]
},
{
"country": "England",
"city": [
"London",
"Manchester",
"Liverpool"
]
}
]
請有人幫我這樣做嗎? 我該怎么做? 非常感謝!
這非常簡單,大部分工作都是由iOS和Xcode完成的,你不會做那么多工作。
您需要了解以下主題: UITableView
, UINavigationController
和Storyboards
。
您可以按照本教程進行操作,您會發現這是一項非常簡單的任務。
這是步驟:
UINavigationController
嵌入第一個屏幕,這樣您就可以免費獲得所有導航內容。 prepareForSegue
(在我上面提到的教程中描述)將選定的國家/地區對象傳遞到Cities屏幕。 請先閱讀教程,然后您將很好地理解我提到的步驟。 這項任務非常簡單,大約需要1小時。
您的表視圖數據源方法是針對此用例設計的:
使用NSIndexPath *selected
的存儲NSIndexPath *selected
來跟蹤didSelectRow中的ui狀態
if (selected)
到cellForRow和numberOfRows, if (selected)
向數據源方法添加if語句
在selected == nil
邏輯分支中, return dict.keys.count
行數return dict.keys.count
並返回dict.keys[indexPath.row][@"country"]
作為行的標題
在selected != nil
分支中, return dict[dict.keys[selected.row][@"cities"].keys.count
表示行數並返回dict[dict.keys[selected.row]][@"cities"][indexPath.row]
作為行的標題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.