簡體   English   中英

iOS:在一個ViewController中映射和列表

[英]iOS: Map and list in one ViewController

我想將兩個不同的視圖(列表和地圖)放入一個View Controller中。 用戶可以通過按頂部的右鍵來更改視圖。 兩者都有搜索選項。 如果可能的話,我想將列表和地圖分開。

我會感激一些提示如何制作它。

查看http://img201.imageshack.us/img201/1104/56044506.png

我建議你創建一個父類,它是UIViewController的子類,這個類的目的是處理搜索欄功能和來自數據源的任何常見委托回調。

從理論的角度來看,這個類將作為一個抽象類,意味着它只應該被子類化而不是直接初始化,但是因為這不可能在objective-c中強制執行,所以不要過於擔心。

下一部分取決於你是否想要使用兩個視圖控制器作為列表和地圖(在問題的最后你說你想要使用兩個類......?)

然后,您可以創建兩個UIViewControllers ,一個用於map,一個用於list,它們都將子類化上面提到的抽象類。 這將允許他們繼承數據源委托回調和搜索欄功能。

或者您可以將兩者合並為一個UIViewController ,它是上述抽象類的子類,在A'sa Dickens的答案中,您可以在一個xib文件中管理兩個視圖,並通過隱藏和顯示,或添加和刪除它們來交換它們。他們的超級視圖。

希望這可以幫助。

在你的xib或storyboard中有2個視圖1用於地圖視圖,1個用於列表視圖,當他們點擊其中一個按鈕時,它隱藏其中一個視圖並顯示另一個隱藏屬性

[listView setHidden:NO];

那是一個例子....

確保您有兩個視圖的引用,並且引用已鏈接。 這是一個不起眼的方法。 您也可以嘗試選項卡視圖控制器...但這更復雜

使用UITableView和MKMapView並將它們添加到同一內容視圖中。 使用隱藏屬性隱藏和取消隱藏視圖,具體取決於用戶單擊的按鈕。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM