我使用 Xamarin.Forms
,我尝试设置 BorderRadius = 10
或 BorderRadius = Device.OnPlatform<int>(iOS: 0, Android: 10, WinPhone: 10)
.在 UWP 上没问题(两种方式)但在 android BorderRadius 上不适用
最佳答案
Button I want change BorderRadius from Button
问题出在 Xamarin Forms for Android 的 ButtonRenderer
上。 Android 有两种 ButtonRenderer
:
ButtonRenderer在 Xamarin.Forms.Platform.Android
命名空间和 ButtonRenderer 下在 Xamarin.Forms.Platfrom.Android.AppCompat
命名空间下。
默认情况下,在 Xamarin.Forms 中,它将使用 Xamarin.Forms.Platfrom.Android.AppCompat
命名空间下的 ButtonRenderer
来呈现按钮,但此呈现器不会没有为 Button
创建边框,因此 BorderRadius
属性不适用于使用此呈现器呈现的按钮。
要解决此问题,您可以使用 Custom Renderer 创建自己的自定义按钮,并使用 Xamarin.Forms.Platform.Android
命名空间下的 ButtonRenderer
进行渲染。
要为您的 Button 创建自定义呈现器,您可以引用此 discussion .
关于android - 边框半径按钮在 Android 上不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42732595/