1

我最近开始为项目使用Xamarin.Forms。像文档中提到的那样,原型设计非常棒。但是,我真的开始注意到UI设计的共享概念的局限性。特别是,无法设置自定义按钮内容(例如图像)正在加剧。我确信会有几个我想要改变控件工作方式的例子。Xamarin.Forms +自定义渲染器与Xamarin.iOS/Xamarin.Android

我看到它的方式,我可以采取两条路线。一,继续使用Xamarin.Forms并使用自定义渲染器。考虑到我仍然会喜欢我的UI代码被共享,但是也可以从基本的Xamarin.Forms控件进行自定义,我倾向于这种选择。二,使用原生Xamarin项目(Xamarin.iOS,Xamarin.Android)。这会让我完全控制每个平台的用户界面,但这也意味着需要更多的代码来维护。

就像我刚才提到的,我目前赞成使用Xamarin.Forms自定义渲染器的选项。我能从那些使用过一种或者(最好)两种选择的人那里得到一些见解吗?

回答

5

我主要使用Xamarin.Forms。对于正确类型的应用程序(也就是“表单”),它运行得非常好。

编写自定义渲染器并不难,但不幸的是文档并不是那么棒。根据你在做什么,在本地控件和Forms布局引擎之间进行转换时,可能会有点棘手。然而,一旦你掌握了它,这是有道理的,而且现在代码是开源的,你可以在里面看看“内置”控件是如何工作的。

有各种扩展可以添加更多控件。有些是免费和开源的,如XLabs.Forms。所以你需要的控制可能已经在那里了。

您可以使用像TapGestureRecognizer这样的机制将图像或标签变成按钮,所以仅仅因为内置的表单按钮确实缺乏可定制性,您有时可以通过其他方式获得相同的效果,仍然留在纯Xamarin.Forms。

希望有帮助!

+0

谢谢,我不知道有Xamarin扩展。 –

+0

非常赞同!那么说@DavidS –

2

XamarinForms适用于不需要使用该设备的许多特性的示例应用程序。

对于复杂的应用程序,我建议您从Xamarin Ios和Android开始。 这将需要更多的时间来负责,但你会看到它更宽松

相关问题