2012-07-17 18 views

Trả lời

15

này nên làm điều đó:

yourButton.frame = CGRectMake(self.view.frame.size.width/2 - yourButton.frame.size.width/2, self.view.frame.size.height/2 - yourButton.frame.size.height/2, yourButton.frame.size.width, yourButton.frame.size.height); 
+0

nhờ làm việc hoàn hảo quá – DavidNg

+0

này dường như làm việc tốt cho chân dung nhưng không phải cho cảnh quan, am i làm sai điều gì? – Rob85

23

này tập trung vào nút ở SuperView của nó:

CGRect bounds = button.superview.bounds; 
button.center = CGPointMake(CGRectGetMidX(bounds), CGRectGetMidY(bounds)); 
+1

Đây không phải là tương đương với '[button setCenter: superview.center]'? –

+0

Không, 'trung tâm' được đo trong hệ thống tọa độ của giám sát, do đó, sẽ đặt nút 'center' ở giữa superview của superview. –

1

Cả rooster117 và DavidNg câu trả lời dường như đúng. Chỉ cần thêm một "tùy chọn" khác cho bạn, nếu bạn muốn thực hiện hoạt ảnh này, bạn nên làm:

NSTimeInterval seconds = 1.0; 
[UIView animateWithDuration:seconds animations:^{ 
    //here you should write any reframing/repositioning code 
}]; 
+0

hi Bruno, nếu tôi muốn một nút để giới hạn với một màu sắc cụ thể, màu đỏ và trong khi ví dụ? – DavidNg

+0

Chỉ cần đặt mã thay đổi màu bên trong khối hoạt ảnh. Một cái gì đó như: NSTimeInterval seconds = 1.0; [UIView animateWithDuration: giây hoạt ảnh:^{ [[myButton setBackgroundColor: [UIColor redColor]]; }]; –

0

Có một số cách để làm điều đó mà không cần viết bất kỳ mã nào. Nếu bạn muốn đặt nút vào giữa màn hình bằng cách sử dụng cài đặt giao diện, bạn có thể view my clip.

0
bntTimeEtrySave.Frame =new CoreGraphics.CGRect (
    this.View.Center.X-((bntTimeEtrySave.Bounds.Size.Width)/2), 
    bntTimeEtrySave.Frame.Y,bntTimeEtrySave.Bounds.Size.Width, 
    bntTimeEtrySave.Bounds.Size.Height); 
+1

Chào mừng bạn đến với StackOverflow! Các câu trả lời chỉ có mã [được khuyến khích] (http://meta.stackexchange.com/a/148274/230241); vui lòng chỉnh sửa câu trả lời của bạn để bao gồm ít nhất một số giải thích về lý do tại sao nó hoạt động. – ravron

2

Dưới đây là nhiều cách tiếp cận đơn giản:

yourButton.center = self.view.center; 
+0

Đây là câu trả lời đúng! Sử dụng center.x hoặc center.y để biết chi tiết cụ thể trong x hoặc y nếu cần! –

+0

cách bạn thực hiện thay đổi hướng hỗ trợ này? :( –

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