2010-06-10 39 views
19

Tôi có nhiều RadioButton trong ứng dụng mein. RadioButton quá lớn đối với tôi. Có cách nào để làm cho nó nhỏ hơn?Android: Cách thay đổi Kích thước của RadioButton

+0

Tôi đoán bạn có thể viết kiểm soát của riêng bạn, nhưng hãy nhớ rằng làm cho các điều khiển quá nhỏ có thể làm cho nó khó khăn hơn cho một số người dùng để đạt sự kiểm soát chính xác khi ở chế độ cảm ứng. Điều này sẽ làm giảm khả năng sử dụng của ứng dụng của bạn. – codinguser

+0

Tôi tìm thấy giải pháp này, xem câu trả lời của tôi ở đây [https://stackoverflow.com/a/44310577/6112256](https://stackoverflow.com/a/44310577/6112256) –

Trả lời

12

Không thể hoàn thành, nút radio là thành phần điều khiển tích hợp và kích thước của nó được cố định.

+0

Cảm ơn bạn rất nhiều! – TianDong

+1

Nó có thể không dễ dàng để làm điều đó, nhưng nó là có thể; xem http://stackoverflow.com/a/4787260/3063884 – CJBS

+2

Vui lòng không trả lời đặc biệt. với những nhận xét tiêu cực là "nó không thể được thực hiện" vv, mà không chắc chắn! Xem, Michael có một giải pháp dễ dàng và khả thi! – Apostolos

14

có thể được thực hiện nhưng không đơn giản như cài đặt Layout_Width và Layout_height như với EditTexts, Buttons v.v. Để sửa đổi kích thước/giao diện của chế độ xem như hộp kiểm/nút radio sử dụng "Nền" và " Nút "thuộc tính để xác định các sản phẩm của riêng bạn.

Đây là một trang cũ, và các địa điểm khác nhau bây giờ, nhưng điều này sẽ cung cấp cho bạn một ý tưởng: http://www.anddev.org/tutorial_change_look_of_checkbox-t4553.html

+0

Xem giải pháp dễ dàng và khả thi của Michael! – Apostolos

0
<RadioGroup android:layout_width="fill_parent"    
      android:layout_height="50dp"   
      android:orientation="horizontal"   
      android:checkedButton="@+id/first"> 

<RadioButton android:id="@+id/first"   
     android:width="50dp"   
     android:height="50dp"   
     android:button="@drawable/button_radio"/> 

    <RadioButton android:id="@+id/second"   
     android:width="50dp"  
     android:height="50dp"  
     android:button="@drawable/button_radio"/> 

    <RadioButton android:id="@+id/third" 
     android:width="50dp" 
     android:height="50dp" 
     android:button="@drawable/button_radio"/> 

    <RadioButton android:id="@+id/fourth"           
     android:width="50dp"    
     android:height="50dp"   
     android:button="@drawable/button_radio"/>   
</RadioGroup> 
22

Một giải pháp hacky nhanh chóng là để mở rộng nút xuống:

<RadioButton 
    android:scaleX="0.5" 
    android:scaleY="0.5" /> 

Tính năng này rất hữu ích khi nhỏ hơn.

Để tăng dung lượng lớn hơn, điều này có xu hướng gây ra một số vết cắt từ hộp chứa Xem, vì vậy bạn có thể phải mã hóa chiều cao/chiều rộng của RadioGroup để phù hợp với các nút được thu nhỏ. Nút drawable cũng có thể nhận rõ rệt pixelated lớn hơn bạn đi, vì vậy nó không thực sự tuyệt vời nếu bạn muốn một cái gì đó lớn hơn 3x ...

+0

và thêm android: textSize = "[size] sp" cũng sẽ mở rộng nhãn nút radio, nhưng khớp với nút và kích thước nhãn cần thêm một số mã ... – sepehr

+0

Cảm ơn bạn :) công việc của nó tuyệt vời !! :) –

+0

Thu nhỏ kích thước nút nhưng để khoảng trống lớn hơn giữa chúng –

0

Tôi đã làm điều này bằng cách điều chỉnh TextSize của RadioButton tự

Giống như rất

android:textSize="20sp" 

sau đó áp dụng cho mã của tôi;

<RadioGroup 
    android:id="@+id/checkboxRadioButton" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_gravity="center_horizontal" 
    android:orientation="horizontal"> 

    <RadioButton 
     android:id="@+id/rb1" 
     style="@android:style/Widget.CompoundButton.CheckBox" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_margin="@dimen/checkBoxMargin" 
     android:text="YES" 
     android:textSize="20sp" /> 
    ... 

Hope trợ giúp này với ai đó

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