您可以使用 CSS 来实现这一点。隐藏ion-radio:
ion-radio {
opacity: 0;
width: 0px;
margin: 0px;
}
将您的自定义单选按钮/形状放入ion-item:
<ion-radio-group>
<ion-item>
<ion-radio slot="start" value="foo" checked></ion-radio>
<ion-icon slot="start" mode="ios" name="radio-button-off" />
<ion-label>foo</ion-label>
</ion-item>
<ion-item>
<ion-radio slot="start" value="bar" checked></ion-radio>
<ion-icon slot="start" mode="ios" name="radio-button-off" />
<ion-label>bar</ion-label>
</ion-item>
</ion-radio-group>
使用 Ionic .item-radio-checked 类:
ion-radio-group .item-radio-checked ion-icon {
fill: teal;
}
ion-radio-group ion-icon::after {
content: "";
width: 14px;
height: 14px;
background: teal;
position: absolute;
top: 5px;
left: 5px;
border-radius: 50%;
transition: transform 0.28s cubic-bezier(0.4, 0, 0.2, 1) 0s;
transform: scale(0);
}
ion-radio-group .item-radio-checked ion-icon::after {
transform: scale(1);
}
这仅适用于 md 模式,但您可以使用 CSS 进一步自定义 ios。