2012-04-05 32 views
7

Vâng, đây là những gì tôi muốn làm trong ứng dụng của tôi: Tôi muốn cấy ghép một UIView với một bản đồ ở nửa trên của màn hình và một tableview ở nửa còn lại với hai nút ở giữa. Nếu tôi nhấn một trong các nút, bản đồ sẽ có chế độ toàn màn hình và nếu tôi nhấn một cái khác thì tableView sẽ vừa với tất cả màn hình.Tôi muốn thực hiện một nửa UITableView một nửa MapView UIView với một nút ở giữa

Bất kỳ đề xuất nào?

Trả lời

7

Trong một bộ điều khiển chế độ xem như một UINavigationController tạo một MKMapView với một khung có kích thước nửa trên cùng của chế độ xem và thêm nó làm chế độ xem con của trình điều khiển chế độ xem của bạn. Sau đó, tôi sẽ tạo ra một UIToolbar để giữ các nút của bạn và làm cho phía trên của khung hình của nó lên với dưới cùng của MKMapView. Cuối cùng tạo ra một UITableView với khung của nó ngay bên dưới những cái khác (hãy chắc chắn rằng bạn treo lên đó là đại biểu).

Sau đó gán các mục tiêu của UIBarButtonItem của bạn mà làm cho bản đồ đi toàn màn hình để một phương pháp mà sinh động khung của tất cả ba quan điểm như thế này:

[UIView animateWithDuration:0.24 
         delay:0.0 
        options:UIViewAnimationCurveEaseOut 
       animations:(void (^)(void)) ^{ 
        self.toolbar.frame = CGRectMake(0, MAP_HEIGHT_FULLSCREEN, 320, TOOLBAR_HEIGHT); 
        self.mapView.frame = CGRectMake(0,0,320,MAP_HEIGHT_FULLSCREEN); 
        self.tableView.frame = CGRectMake(0, MAP_HEIGHT_FULLSCREEN+TOOLBAR_HEIGHT, 320, MAP_HEIGHT_FULLSCREEN-MAP_HEIGHT); 
       } 
       completion:^ (BOOL finished){} 
]; 
+0

Wow cảm ơn bạn! Tôi đã thực hiện nó và trông thực sự tuyệt vời! – sergiocg90

+0

@ SergioCalvoGonzález Bạn được chào đón. Nếu câu trả lời của tôi đã giúp bạn đừng quên bỏ phiếu. –

+0

xin lỗi, nhưng tôi chưa thể bỏ phiếu ... – sergiocg90

1

Tạo cả hai chế độ xem bạn đang lập kế hoạch, Trên một lần nhấp nút, thay đổi khung của một chế độ xem để vừa với toàn màn hình, nếu bạn nhấp vào nút kia, hãy thực hiện tương tự với chế độ xem khác.

+0

Bạn có nghĩa là tạo ra hai viewcontrollers? Hoặc trong cùng một viewController thực hiện cả hai và thay đổi khung khi một nút được nhấn? – sergiocg90

+1

1 chế độ xem. 2 lượt xem. Thay đổi khung của các khung nhìn. –

Các vấn đề liên quan