Tôi có một ứng dụng có bố cục chính của chân dung (nó được cố định làm hình chân dung) và có một vị trí để nhập văn bản. Tôi muốn khởi chạy như một cửa sổ bật lên theo hướng ngang với hình nền mờ đi. Tôi biết có một Widget Popup, nhưng bất kỳ ý tưởng để xoay hộp soạn thảo văn bản sẽ là tuyệt vời. Xoay nó vào chế độ xem dọc (chỉ hộp văn bản) khi bàn phím bị trượt cũng sẽ hoạt động, như sẽ hiển thị màn hình mới với hộp văn bản trên bàn phím trượt.Làm thế nào để hiển thị một hộp soạn thảo văn bản "trên" màn hình?
Trả lời
Giải pháp dễ nhất cho vấn đề của bạn là hiển thị EditText
trong Hoạt động theo chủ đề riêng biệt dialog
mà bạn khởi chạy từ trong Hoạt động chính (chân dung cố định).
Hoạt động EditText không được định hướng cố định, vì vậy nó sẽ xoay như bạn mong đợi khi bạn trượt bàn phím ra.
Tạo Text Entry Hoạt động
Tạo Hoạt động mới chỉ chứa các EditText Xem và bất cứ điều gì khác mà bạn muốn bao gồm (có thể là OK/Cancel nút và có thể là một nhãn?). Trong tệp kê khai đặt chủ đề của nó thành Theme.Dialog
.
<activity android:name="TextEntryActivity"
android:label="My Activity"
android:theme="@android:style/Theme.Dialog"/>
Làm mờ hoặc làm mờ hoạt động sau hộp thoại được thực hiện bằng cách sửa đổi thuộc tính cửa sổ của hoạt động nền trước (hộp thoại nhập văn bản). Trong đó phương thức onCreate sử dụng getWindow().setFlags
để áp dụng làm mờ cho bất kỳ Hoạt động nền nào.
getWindow().setFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND,
WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
Lễ ra mắt và Đọc Được nhập giá trị từ Hoạt động nhập văn bản
Sử dụng startActivityForResult
để khởi động Hoạt động nhập văn bản. Trong cuộc gọi Hoạt động đó, hãy gọi setResult
để trả về chuỗi văn bản được nhập trong mục đích trả về bằng cách sử dụng các kỹ thuật được mô tả trong this post.
Ghi đè phương thức onActivityResult
để nghe kết quả từ Hoạt động phụ.
Triggering Launch trên bàn phím xúc
Bạn có thể khởi động Hoạt động nhập văn bản bất cứ khi nào bạn muốn, nhưng nếu bạn muốn luôn hiển thị nó khi bàn phím được tiếp xúc bạn có thể chụp sự kiện này explicitely.
Bắt đầu bằng cách thêm thuộc tính android:configChanges
vào mục nhập tệp kê khai của Hoạt động. Nó phải được đăng ký để nghe cho keyboardHidden
.
android:configChanges="keyboardHidden"
Trong hoạt động đó, ghi đè onConfigurationChanged
để khởi chạy hoạt động nhập văn bản.
@Override
public void onConfigurationChanged(Configuration newConfig) {
Intent i = new Intent(this,TextEntryActivity.class);
startActivityForResult(i, STATIC_INTEGER_VALUE);
}
Bạn có thể muốn kiểm tra để xác nhận bàn phím đang được hiển thị (thay vì ẩn) bằng biến NewConfig trước khi khởi chạy Hoạt động nhập văn bản.
Bạn cũng có thể muốn sử dụng cùng một kỹ thuật để tự động trở lại từ hoạt động nhập văn bản khi bàn phím bị ẩn.
- 1. Hiển thị văn bản chuỗi động trên màn hình Android
- 2. Làm thế nào để thiết kế một trình soạn thảo văn bản trong QT?
- 3. Soạn thảo văn bản Hoạt hình như word2013
- 4. Trình soạn thảo văn bản phong phú Qt - có sẵn một trình soạn thảo văn bản chưa?
- 5. Làm thế nào để hiển thị văn bản Bengali đúng
- 6. Android - Cách hiển thị hộp thoại trên màn hình gốc?
- 7. Hộp văn bản Winform không thể hiển thị văn bản
- 8. làm thế nào để hiển thị một phần xem trên chuột trên văn bản trong MVC3?
- 9. Trình soạn thảo văn bản cho hội
- 10. Cuộn chậm trên trình soạn thảo văn bản Ace cho thiết bị màn hình cảm ứng di động
- 11. Làm thế nào để hiển thị hình ảnh PIL trên màn hình?
- 12. Làm thế nào để duyệt (không có trình soạn thảo văn bản) .rst tệp?
- 13. chế độ soạn thảo văn bản để gọi lệnh bash
- 14. css/ít trình soạn thảo hiển thị màu sắc
- 15. Làm thế nào để hiển thị văn bản trong một dòng trong văn bản wpf
- 16. Trình soạn thảo văn bản với Scripting ... cho Linux
- 17. Làm cách nào để tìm mã ký tự của một ký tự đặc biệt trong trình soạn thảo văn bản?
- 18. Làm thế nào để đầu ra chương trình ống trong một trình soạn thảo?
- 19. Tạo trình soạn thảo văn bản phong phú AngularJS
- 20. Làm thế nào để hiển thị văn bản theo chiều dọc trên một nút trong JavaFX?
- 21. Làm thế nào để viết một bổ trợ để thay đổi màu văn bản trong trình soạn thảo Visual Studio?
- 22. OpenGL: Hiển thị nhanh trên màn hình
- 23. JUnit & Ant: Làm thế nào để hiển thị thông báo lỗi chi tiết trên màn hình?
- 24. soạn thảo văn bản contenteditable và vị trí con trỏ
- 25. Làm thế nào để làm cho một số văn bản in đậm trong một hộp văn bản giàu C#
- 26. Làm thế nào để hiển thị một phần hình ảnh trên màn hình ở phần cuối của hình động
- 27. Trình soạn thảo Eclipse hiển thị biến số xuất hiện
- 28. Làm cách nào để hiển thị văn bản được bao bọc trên hình ảnh trong java
- 29. MBProgressHUD để hiển thị văn bản nhãn trên nhiều dòng
- 30. Trình soạn thảo văn bản XML nhẹ miễn phí để bao gồm với một ứng dụng
cảm ơn vì sự thấu hiểu của bạn. – Chrispix