2011-07-25 28 views
18

Tôi đang tạo trò chơi mà tôi sẽ chuyển từ màn hình chính sang màn hình chiến đấu và mặt sau khi trận chiến kết thúc. Có tốt hơn để có hai màn hình như các hoạt động riêng biệt hoặc tôi có thể nhận được bằng cách sử dụng setContentView (R.layout.screen2)?Android: chuyển đổi màn hình với hoạt động mới hoặc chỉ thay đổi chế độ xem nội dung

Tôi đã cố gắng chuyển màn hình hoạt động sang chế độ làm việc nhưng mỗi khi tôi dùng thử, điện thoại của tôi cho tôi biết rằng ứng dụng không phản hồi. Nếu nó tốt hơn để sử dụng các hoạt động, thì tôi sẽ dành thời gian để làm việc đó, nhưng bây giờ tôi sẽ thực hiện một cách dễ dàng để làm việc.

+0

Có thể trùng lặp [Calling setContentView() nhiều lần] (http://stackoverflow.com/questions/4018772/calling-setcontentview-multiple-times) –

Trả lời

20

Bộ gọi điệnContentView() nhiều lần không được khuyến nghị. Cách thông thường để chuyển đổi giữa các bố cục trong cùng một hoạt động là sử dụng ViewFlipper hoặc FrameLayout (xem Calling setContentView() multiple timesHow can i make a dynamic flipping screen(like that of iPhone) in Android)

Hoặc bạn có thể sử dụng ViewSwitcher, có vẻ phù hợp với nhu cầu của bạn khá tốt. Có một hướng dẫn chi tiết có sẵn tại http://inphamousdevelopment.wordpress.com/2010/10/11/using-a-viewswitcher-in-your-android-xml-layouts/

0

Cách đơn giản nhất để thay đổi chế độ xem của hoạt động sẽ là tăng lượt xem mục tiêu vào ViewGroup gốc của hoạt động (FrameLayout tốt nhất). Đây chỉ là một mã một dòng

inflater.inflate(R.layout.target_view,(ViewGroup)findViewById(R.id.activity_root_viewgroup), true); 
Các vấn đề liên quan