Tôi đã tự hỏi liệu có cách nào để chuyển đổi văn bản xuất hiện trên nút radio trong Android không?Thay đổi cạnh của văn bản xuất hiện trên nút radio
Trả lời
Như Ravi Vyas cho biết, bạn có thể tự làm điều này với TextView
và RadioButton
. Không có nội tại nào là RadioButton
để định vị lại nút liên quan đến văn bản, từ việc đọc mã nguồn của tôi.
Ngoài ra, xin lưu ý rằng chỉ vì điều này là có thể không có nghĩa là đó là một ý tưởng hay. Ví dụ: trên iPhone, bạn có thể không được phép gửi ứng dụng của mình nếu bạn gây rối với quá nhiều điều này, vì chúng có hướng dẫn giao diện con người mà ứng dụng phải tuân thủ. Android cung cấp cho bạn nhiều hơn dây - không treo người dùng của bạn với nó.
tôi muốn làm điều tương tự, mà không cần phải mở rộng nhưng lớp khác (hoặc hai, như bạn sẽ phải ít nhất kéo dài CompoundButton và RadioButton) kiếm cái gì đó nên là một phần của việc thực hiện ngay từ đầu. Vì tôi đã sử dụng một RadioGroup, mà sẽ không hoạt động nếu bạn đặt nói, một RadioButton và một TextView trong một container bố trí. Giải pháp của tôi là thừa nhận hơn một chút hackish, nhưng - nó hoạt động.
1) Set Padding trái sang 40 2) Thiết lập lề trái sang Layout -36dp
Tại thời điểm này, các nút radio gốc sẽ được bên ngoài xem, và xem văn bản của bạn sẽ được ngồi trên bên trái với biên độ 4dp.
3) Thiết lập drawable quyền @android: drawable/btn_radio
Bây giờ bạn sẽ có một RadioButton bản địa với văn bản bên trái và một nút ở bên phải, mà sẽ làm việc với một RadioGroup.
@CommonsWare
Nó đáng nói rằng nó vô cùng mỉa mai để đưa lên Hướng dẫn Human Interface để đáp lại câu hỏi cụ thể này. Đặc biệt là xem xét điều chỉnh bố cục RadioButton để đặt nút ở bên phải, sẽ đạt được sự nhất quán với bố cục của menu Spinner. Tôi hoàn toàn đồng ý với ý kiến của bạn về vấn đề này - nhưng có khả năng NickTFried đã cố gắng bù đắp cho Android "treo" bản thân trong vấn đề đó.
Bạn có thể sử dụng nút android: button = "@ null" để xóa nút radio bên trái (thay vì Bước 1) – EtienneSky
khi tôi đang đặt android: button = "@ null", nút radio không được chọn (được nhấp). Tôi đang làm gì sai. hãy giúp http://stackoverflow.com/questions/28052820/android-custom-radio-button-not-getting-checked –
Điều này có thể được thực hiện bằng cách sử dụng CheckedTextView
; xem android RadioButton option on the right side of the text
Liên kết không cung cấp bất kỳ thông tin bổ sung nào .... – Jeroen
CheckedTextView
hoạt động tốt nếu bạn đang làm việc với một "nút radio" duy nhất.
Nhưng tôi cần thiết để duy trì các chức năng toggling giữa các nút radio trong một nhóm để làm việc này tốt hơn cho tôi:
<RadioGroup
android:id="@+id/radioGroup1"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/radioButton1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:gravity="left|center_vertical"
android:layout_marginLeft="-32dp"
android:text="Radio Button 1" />
<RadioButton
android:id="@+id/radioButton2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:gravity="left|center_vertical"
android:layout_marginLeft="-32dp"
android:text="Radio Button2" />
</RadioGroup>
Điều chỉnh android:layout_marginLeft
khi cần thiết.
Đối với ngôn ngữ RTL i.e Arabic
sử dụng này:
<RadioGroup
android:id="@+id/rgNewsFilter"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<RadioButton
android:id="@+id/rbAllNews"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="-32dp"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:gravity="right|center_vertical"
android:text="ذنيسبمنشخصث"
android:textColor="#ffffff" />
<RadioButton
android:id="@+id/rbMyTeam"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="-32dp"
android:button="@null"
android:drawableRight="@android:drawable/btn_radio"
android:gravity="right|center_vertical"
android:text="تشسيبتسيتبتسيب"
android:textColor="#ffffff" />
</RadioGroup>
Android đã tích hợp sẵn trong cách bố trí, bạn có thể sử dụng - android.R.layout.simple_list_item_single_choice
:
<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (C) 2008 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<CheckedTextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/text1"
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeightSmall"
android:textAppearance="?android:attr/textAppearanceListItemSmall"
android:gravity="center_vertical"
android:checkMark="?android:attr/listChoiceIndicatorSingle"
android:paddingStart="?android:attr/listPreferredItemPaddingStart"
android:paddingEnd="?android:attr/listPreferredItemPaddingEnd" />
Nếu bạn muốn thay đổi nó, bạn có thể sao chép-dán trên vào một file XML mới và sau đó sử dụng thẻ <include>
để bao gồm trong bố cục khác của bạn (theo số Apache 2.0 License). Bạn cũng có thể sử dụng nó như một mục danh sách và để nó không thay đổi.
- 1. Thay đổi phông chữ của văn bản bên cạnh nút radio?
- 2. CSS: Cách thay đổi khoảng cách giữa nút radio và văn bản của nó?
- 3. Căn chỉnh văn bản theo chiều dọc bên cạnh nút radio
- 4. Thay đổi nút radio ASP.NET
- 5. Chức năng bấm/thay đổi jQuery trên bộ nút radio
- 6. Nhóm jQuery của các nút radio. Phương thức thay đổi
- 7. Phát hiện thay đổi của văn bản html
- 8. Chuyển đổi văn bản trên thẻ nút
- 9. Nhấp vào văn bản để chọn nút radio tương ứng
- 10. Tiện ích Android: Cách thay đổi văn bản của nút
- 11. XmlSlurper: Cách thay đổi văn bản của nút động
- 12. văn bản gói không đúng cho nút radio
- 13. XSLT: nút thay đổi bên trong văn bản
- 14. Làm cách nào để thay đổi màu của nút và màu văn bản trên android
- 15. jQuery - trên văn bản nhập thay đổi
- 16. UIActivityViewController - cách thay đổi văn bản nút hủy
- 17. thay đổi màu văn bản nút khi nhấn
- 18. CSS để thay đổi kiểu con trỏ của nút thay đổi kích cỡ trên vùng văn bản
- 19. Cách thay đổi văn bản nút quay lại uinavigationbar
- 20. elip không xuất hiện trên văn bản tràn
- 21. Rails gửi văn bản nút (formtastic) - làm thế nào để thay đổi nhãn của nút gửi?
- 22. thay đổi văn bản của nút và nút tắt trong iOS
- 23. Thay đổi văn bản động cho Nút Actionbar Android
- 24. Các nút radio trên Rails
- 25. Nút radio có hình ảnh dưới dạng tùy chọn thay vì văn bản
- 26. Trình nghe hành động trên nút radio
- 27. Giá trị thay đổi JQuery từ nút radio
- 28. Android Spinner - Cách xóa nút radio?
- 29. Làm cách nào để truy xuất văn bản của nút văn bản DOM?
- 30. Thay đổi văn bản từ "Gửi" trên thẻ đầu vào
cũng có thể tạo bố cục phức tạp với văn bản và nút radio không gắn nhãn –