Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/215.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 边框半径按钮don';我不能在安卓上工作_Android_Xamarin_Xamarin.forms - Fatal编程技术网

Android 边框半径按钮don';我不能在安卓上工作

Android 边框半径按钮don';我不能在安卓上工作,android,xamarin,xamarin.forms,Android,Xamarin,Xamarin.forms,我使用Xamarin.Forms,尝试设置BorderRadius=10或BorderRadius=Device.OnPlatform(iOS:0,Android:10,WinPhone:10)。在UWP上可以(双向),但在android BorderRadius上不适用 按钮我想更改按钮的边界半径 问题在于Android版Xamarin表单的按钮阅读器。Android有两种按钮阅读器s: 在Xamarin.Forms.Platform.Android命名空间下和Xamarin.Forms.Pl

我使用
Xamarin.Forms
,尝试设置
BorderRadius=10
BorderRadius=Device.OnPlatform(iOS:0,Android:10,WinPhone:10)
。在UWP上可以(双向),但在android BorderRadius上不适用

按钮我想更改按钮的边界半径

问题在于Android版Xamarin表单的
按钮阅读器
。Android有两种
按钮阅读器
s:

Xamarin.Forms.Platform.Android
命名空间下和
Xamarin.Forms.Platfrom.Android.AppCompat
命名空间下

默认情况下,在Xamarin.Forms中,它将使用
Xamarin.Forms.Platfrom.Android.AppCompat
命名空间下的
按钮渲染器来渲染按钮,但此渲染器不会为
按钮
创建边框,因此,
BorderRadius
属性不适用于使用此渲染器渲染的按钮

要解决此问题,您可以使用创建自己的自定义按钮,并使用
Xamarin.Forms.Platform.Android
命名空间下的
ButtonRenderer
进行渲染

有关为按钮创建自定义渲染器的信息,请参考此信息。

其他解决方案

像这样更改渲染器构造函数

public CustomButtonRenderer(Context context) : base(context)
{

}

您需要在哪个控件上使用此
BorderRadius
按钮
我想从
按钮
更改
BorderRadius