xamarin.form的新手受阻... 这就是我要做的。 我在xamarin.form的welcome.xaml中有一个按钮,我想执行click事件,但我希望在click.event中实现xamarin.driod中的方法。
这对任何人都有意义吗?
答案 0 :(得分:1)
您需要编写一个自定义控件。
因此您可以处理Android
或IOS
中的点击事件。
阅读known solved problem,了解如何在xamarin.forms
中创建自定义控件
您还可以从driod项目中分配共享项目中存在的静态类。
答案 1 :(得分:0)
我通常更喜欢使用IOC和接口在Core项目中实现平台特定的逻辑,但是简单的方法可能只是在后面的页面代码上设置静态Action。
public partial class WelcomePage
{
public static Action DroidAction { get; set; }
private void Button_OnClicked(object sender, EventArgs e)
{
if (DroidAction == null)
{
Debug.WriteLine("Action was not set");
}
DroidAction?.Invoke();
}
您的Droids OnCreate可能是执行此操作的一个选项。
protected override void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
WelcomePage.DroidAction = new Action(() => Debug.WriteLine("I a platform specific action!"));
}