2014-10-20 20 views
10

Tôi đang sử dụng Trình tạo giao diện trong Xcode 6 để tạo ứng dụng và gặp sự cố khi tải các trường văn bản và nút để căn giữa trên màn hình cho các màn hình kích thước khác nhau.Bố cục tự động: Xcode 6: Các yếu tố giao diện người dùng trung tâm

Tôi nghĩ rằng đó là vấn đề chọn căn giữa và ngang trong container nhưng có vẻ như không phải khi tôi thử nó trong bố cục tự động. Trên thực tế tôi đã tinkered xung quanh một chút và tôi vẫn chưa có nó.

Tôi chỉ muốn để có thể xem tất cả các nút và văn bản lĩnh vực của tôi đối với bất kỳ màn hình kích thước iPhone và ngay bây giờ mô phỏng được chỉ cho thấy một phần của những yếu tố giao diện người dùng như thế này:

View in iPhone 6 simulator

Tôi cũng muốn làm điều này trong bảng phân cảnh và không phải trong mã như tôi không ở mức độ làm điều này trong mã nào được nêu ra.

Trả lời

11

Bước 1: Đảm bảo lớp kích thước của bạn bao phủ tất cả màn hình iPhone ít nhất ở chế độ xem dọc. Vì vậy, thay đổi lớp kích thước thành "wCompact hRegular".

Bước 2: Sau khi đặt đúng kích cỡ lớp, hãy thêm UITextFields và UIButton vào bảng phân cảnh của bạn. Đối với tôi, nó trông giống như-

enter image description here

Bước 3: Trước đây, bạn bắt đầu thêm những hạn chế, bạn cần phải nhớ hai things-

a. Phần tử của bạn (UITextField, UIButton, UIView hoặc bất kỳ thành phần nào) cần biết vị trí bắt đầu của nó một cách rõ ràng và

b. Yếu tố của bạn cần biết ý nghĩa kích thước của nó, chiều cao và chiều rộng của nó.

Trong trường hợp này, khi bạn muốn căn giữa các phần tử, tôi giả định rằng nó cần phải được căn giữa bắt đầu từ 10 thang đo từ cạnh trái và phải kết thúc 10 vảy ra khỏi cạnh phải của màn hình iPhone. Bây giờ, điều đó có nghĩa, chiều rộng của nó sẽ khác nhau dựa trên kích thước màn hình, nhưng chiều cao của nó sẽ giống nhau.

Vì vậy, tôi chỉ cần thêm ép sau đường cho văn bản 1st box-

enter image description here

Thông báo, trong thanh tra kích thước, tôi đặt hộp văn bản của điểm khởi đầu, x và chiều rộng trong một cách mà nó là 10 pt đi từ cạnh trái và 10 pt đi từ cạnh phải. Đừng lo lắng, nó chỉ đơn giản là toán học.

Đối với TextField thứ 2, tôi thêm Constrain, giống gì theo cách

enter image description here

Cuối cùng, đối với các nút, ép là following-

enter image description here

Bây giờ, bạn là tốt để đi. Mọi thứ đều được căn giữa.

Hy vọng điều này sẽ hữu ích.

+12

Tôi muốn khóc. Và tôi nghĩ rằng bố cục XML của android là khủng khiếp. – Josh

+0

Một lần, bạn quen với bố cục tự động, nó sẽ là người bạn tốt nhất của bạn, nhưng có, đường cong học tập có thể rất cứng vì bạn sẽ phải trải qua thử và sai để thực sự hiểu bạn nên làm gì và bạn nên làm gì 't. Bên cạnh đó có rất nhiều cách, bạn có thể đạt được điều tương tự. – Natasha

+0

@Josh Bạn sẽ khóc nếu bạn phải từ bỏ XAML cho crap này. Đó là cuộc sống ... khi Microsoft viết ra việc mua lại điện thoại Nokia của mình. Cắn viên đạn ở đây. – Stonetip

1

Bạn cần tận dụng bộ chọn lớp kích thước ở cuối cửa sổ bảng phân cảnh.

Vì vậy, cho một chiếc iPhone 6 hoặc 6 Plus trong bức chân dung bạn sẽ chọn một chiều rộng nhỏ gọn và chiều cao bình thường như thế này:

enter image description here

Và sau đó bạn sẽ làm bất cứ điều gì bố trí ô tô thứ cho thiết bị nhất định có

+0

Ok, khi tôi đã thực hiện lựa chọn đó cho ảnh chân dung, tôi cần phải làm gì trong bố cục tự động sau đó? Tôi muốn nó làm việc cho iPhone 6, tôi chỉ sử dụng bức chân dung vì vậy nó không phải phù hợp với chế độ phong cảnh. – cheznead

4

Bằng cách sử dụng bộ chọn lớp kích thước ở cuối cửa sổ bảng phân cảnh, đặt kích thước của bạn thành bất kỳ chiều rộng và chiều cao nào và sau đó thực hiện theo các ràng buộc bố cục tự động bên dưới. Nó sẽ làm việc cho bạn.

enter image description here

Trước tiên hãy chọn xem bạn muốn thiết lập bố trí tự động, và sau đó chọn tùy chọn pin từ góc dưới bên phải của kịch bản của bạn và sau đó thêm ép như thể hiện trong hình ở trên và nút bấm Add 4 constrains

Lặp lại quy trình cho tất cả các chế độ xem và đặt các ràng buộc là Fix the top, bottom, left and right constrains of all views except the last button that should be fix from top,left,right and fixed height.

+0

Mặc định là chiều rộng và chiều cao bất kỳ. Tôi tạo các hằng số ở đâu? – cheznead

+0

@shinnyWhack Nếu nó là theo mặc định ở bất kỳ chiều rộng và chiều cao sau đó chỉ đơn giản là chọn quan điểm của bạn từng người một và thiết lập các ràng buộc như được đưa ra trong hình ảnh trên. Sửa các ràng buộc trên cùng, dưới cùng, bên trái, bên phải của tất cả các chế độ xem ngoại trừ nút cuối cùng phải được sửa từ đỉnh, bên trái, bên phải và chiều cao cố định. – iHulk

+0

Nhưng tôi phải sửa những hạn chế đó và làm cách nào? (Tôi không muốn tạo ra những ràng buộc này theo chương trình). Tôi có sử dụng bố cục tự động không và nếu có, tôi sẽ sử dụng thao tác nào: căn chỉnh hoặc ghim? Họ rất khó để làm việc với tôi như một người mới bắt đầu hoàn chỉnh. – cheznead

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