2012-11-19 19 views
7

Bất cứ ai có thể cho tôi biết làm thế nào để tránh nhấn bên ngoài vòng tròn của một nút tròn vì "wrap_content" dường như không hoạt động. Tôi đã sử dụng tệp hình ảnh để tạo nút. Tôi đánh giá cao sự giúp đỡ nào. Cảm ơn.Android: Làm thế nào để tránh nhấn bên ngoài vòng tròn của một nút tròn bằng cách sử dụng nội dung bọc?

+0

có lẽ câu trả lời liên quan có thể giúp bạn: (1) http://stackoverflow.com/câu hỏi/10266595/cách thực hiện-một-vòng-nút (2) http://stackoverflow.com/questions/9049868/round-button-in-android-avoid-presses-outside-the-button – rosco

+1

Với một 'Nút' mặc định bạn không thể làm khung nhìn sẽ là hình chữ nhật/hình vuông. Nếu bạn tạo lớp 'Button' của riêng mình thì bạn có thể xác định liệu người dùng có chạm vào nút' Bên ngoài vòng tròn và bỏ qua sự kiện đó không. Có một số câu hỏi liên quan đến tình huống chính xác, tìm kiếm stackoverflow. – Luksprog

Trả lời

4

Chỉ cho sự hiểu biết của bạn .. (Theo mặc định android View là trong Rectangle hình dạng nên nó áp dụng tương tự cho nút)

  1. Đặt cảm ứng Listener để nút của bạn và trong onTouch() đồ XY tọa độ cho Khu vực vòng tròn. Nếu nó nằm trong khu vực bên trong làm những gì bạn muốn, hãy trả lại false.

  2. Sử dụng Inset xem hướng dẫn này http://www.anotherandroidblog.com/2011/07/01/button-hit-area-for-custom-graphics/

  3. Thực hiện TouchDelegates xem hướng dẫn này http://www.vogella.com/blog/2012/04/15/android-using-touchdelegates/