android - 自定义可绘制单选按钮 Android 宽度和高度参数
问题描述
我一直在阅读有关堆栈溢出的一些答案,尽管尝试了各种建议,但似乎无法使其正常工作。也许有一种“新”的方式可以做到?
我正在尝试将自定义可绘制对象添加到单选集合中的两个单选按钮:
<RadioGroup
android:id="@+id/orderByRadioGroup"
android:layout_width="0dp"
android:layout_height="30dp"
android:orientation="horizontal"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<RadioButton
android:id="@+id/radioStarRating"
android:layout_width="0dp"
android:layout_height="30dp"
android:layout_weight="1"
android:button="@drawable/checkbox"
android:text="@string/filters_star_rating"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="@+id/guideline46"
app:layout_constraintTop_toTopOf="parent" />
<RadioButton
android:id="@+id/radioResponseTime"
android:layout_width="0dp"
android:layout_height="30dp"
android:layout_weight="1"
android:button="@drawable/checkbox"
android:text="@string/filters_response_time"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toStartOf="@+id/guideline46"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</RadioGroup>
单选按钮
`android:button`
已经设置了这个drawable:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="false" android:drawable="@drawable/checkboxfalse"
android:width = "30dp"
android:height = "30dp"/>
<item android:state_checked="true" android:drawable="@drawable/checkboxtrue"
android:width = "30dp"
android:height = "30dp"/>
<item android:drawable="@drawable/checkboxfalse"
android:width = "30dp"
android:height = "30dp"/>
</selector>
但结果是这样的:
如何正确制作可绘制比例?selector
元素没有可绘制对象的高度和宽度,这很困难......
感谢您的任何帮助/指点。
解决方案
将您的选择器drawable设置为背景:
android:background="@drawable/checkbox"
android:button="@android:color/transparent"
推荐阅读
- tensorflow - ModuleNotFoundError:没有名为“tflite_support.metadata_writers”的模块
- amazon-s3 - Django 中的 Sorl 缩略图。是否可以根据模型设置两个或多个存储配置文件?
- java - Spring引导上下文不断尝试连接到java rmi服务器并失败
- docker - 如何码头化.net项目
- powershell - 将 Resolve-DNSname 添加到 Hashtable
- windows - 限制 Windows 上的 git bash 执行
- merge - SSIS合并联接不匹配内部联接上的所有行
- javascript - 使用 unix() 创建 Unix 纪元时间
- c# - 当属性公开子属性的属性时如何解决反序列化问题
- nexus3 - 如何在没有网络上传的情况下将转储导入到 nexus OSS?