我的Droid-Project中有以下课程:
using MyProject.Droid;
using Xamarin.Forms.Platform.Android;
[assembly: Xamarin.Forms.ExportRenderer(typeof(Android.Widget.Button), typeof(ArrowButtonRenderer))]
namespace MyProject.Droid
{
public class ArrowButtonRenderer : Xamarin.Forms.Platform.Android.ButtonRenderer
{
protected override void OnElementChanged(ElementChangedEventArgs<Xamarin.Forms.Button> e)
{
base.OnElementChanged(e);
var btn = this.Control as Android.Widget.Button;
btn.SetBackgroundColor(global::Android.Graphics.Color.Green);
}
}
}
我知道,你不需要自定义渲染器来改变按钮的颜色,但我只想尝试一下:)
干杯!
编辑:以下是关于如何将按钮添加到UI的代码:
MyStackLayout.Children.Add(new Button
{
Text = "My Button Text"
});
通过xaml的一些按钮:
<Button x:Name="btnIdk" Text="something" />
答案 0 :(得分:1)
经过广泛的聊天并查看您的来源后,我看到PCL安装了Xamarin.Forms版本2.3.1.114。
您的Droid项目安装了1.5.x版本,所以它更老了!
现在下一部分会很棘手,你需要为Android更新你的Xamarin.Forms包。但是,如果您首先更新Xamarin.Android.Support。*软件包,则会收到错误消息,指出您无法更新Xamarin.Forms,因为找不到匹配的Forms版本。
因为Android的Xamarin.Forms在很大程度上依赖于它们与特定版本链接的支持包,但它们并不总是同步。截至目前,Xamarin.Forms版本(2.3.2.127)似乎错过了相应的Android支持包。所以不要升级到那个,升级到与PCL相同的版本2.3.1.114。然后Android软件包将更新到23.3.0,一切都会很好用。