2012-12-11 25 views
7

Tôi muốn tạo ra một màn hình menu trò chơi trong LibGDX sử dụng gói scene2d với sau bố tríLinearLayout analog bên trong Bảng trong LibGDX

| label | 
| btn btn btn | 
| label | 

Mã của tôi trông như sau:

Table table = getTable(); 
table.add(label1); 
table.row(); 
table.add(button1); 
table.add(button2); 
table.add(button3); 
table.row(); 
table.add(label2); 
table.row(); 

Nhưng thay vì những gì tôi muốn tôi nhận được một cái gì đó như thế này:

| label  | 
| btn btn btn | 
| label  | 

Lý do là vì mỗi table.add() m cuộc gọi ethod tạo một ô mới. Nhưng tôi muốn đặt tất cả 3 nút bên trong một ô. Làm thế nào tôi có thể đạt được kết quả mong muốn, có thể trong LibGDX hiện có một cái gì đó như LinearLayout hoặc bất cứ điều gì khác?

Trả lời

9

Gọi colspan(3) trên di động được trả lại cho bạn khi gọi add(label);

cũ.

Cell cell = table.add(label1); 
cell.colspan(3); 

Điều này, như tên ngụ ý, đặt số lượng ô sẽ di chuyển ngang qua. Bạn có thể cần phải thiết lập sự liên kết trên di động cũng bằng cách gọi cell.center();

bạn có thể chuỗi lại với nhau các cuộc gọi từ tất cả họ đều trả lại đối tượng cùng một tế bào ..

table.add(label1).colspan(3).center(); 

Lớp tế bào không dường như tài liệu cho libgdx .. Tôi chỉ cần đi trên mã nguồn được tìm thấy here

Tài liệu lớp tế bào có thể được tìm thấy here cho bây giờ. Nó dường như bị thiếu từ các tài liệu chính thức.

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