2012-01-12 39 views
6

Tôi đang tạo ứng dụng của mình cho tất cả máy tính bảng 10.1 và giờ tôi đang thử trên tab galaxy galaxy. Tôi đã thực hiện tất cả các phần của hộp thoại đó nhưng cảnh báo quá nhỏ về kích thước máy tính bảng. Tôi cũng đã tạo hộp thoại cảnh báo tùy chỉnh nhưng không có vẻ tốt. Vì vậy, hãy cho tôi biết tôi có thể thay đổi kích thước của hộp thoại cảnh báo mặc định nếu có thì làm thế nào.Kích thước hộp thoại cảnh báo hoặc hộp thoại cảnh báo tùy chỉnh

HOẶC

làm thế nào để tạo ra hộp thoại cảnh báo tùy chỉnh mà trông giống như hộp thoại cảnh báo mặc định.

Cảm ơn.

Trả lời

12

vui lòng tham khảo this one

Theo nhà phát triển nền tảng Android Dianne Hackborn trong this nhóm thảo luận bài viết, Dialogs set top chiều rộng bố trí mức Window của họ và chiều cao để wrap_content. Để làm cho hộp thoại lớn hơn, bạn có thể đặt các tham số đó thành FILL_PARENT.

đang Demo:

AlertDialog.Builder adb = new AlertDialog.Builder(this); 
Dialog d = adb.setView(new View(this)).create(); 
// (That new View is just there to have something inside the dialog that can grow big enough to cover the whole screen.) 

WindowManager.LayoutParams lp = new WindowManager.LayoutParams(); 
lp.copyFrom(d.getWindow().getAttributes()); 
lp.width = WindowManager.LayoutParams.MATCH_PARENT; 
lp.height = WindowManager.LayoutParams.MATCH_PARENT; 
d.show(); 
d.getWindow().setAttributes(lp); 

Lưu ý rằng các thuộc tính được thiết lập sau khi Dialog được hiển thị. Hệ thống này là khó tính khi chúng được thiết lập. (Tôi đoán rằng công cụ bố cục phải đặt chúng vào lần đầu tiên hộp thoại được hiển thị hoặc một cái gì đó.)

Sẽ tốt hơn nếu bạn mở rộng Theme.Dialog, sau đó bạn sẽ không phải chơi trò chơi đoán về thời điểm gọi setAttributes. (Mặc dù có nhiều công việc hơn để hộp thoại tự động áp dụng một chủ đề tối hoặc ánh sáng thích hợp hoặc chủ đề Holo Honeycomb. Có thể thực hiện theo http://developer.android.com/guide/topics/ui/themes.html#SelectATheme)

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