android – Xamarin.Forms布局如何转换为特定于平台的布局?

我最近与我的团队讨论了Xamarin.Form布局,他们认为Xamarin.Forms.AbsoluteLayout很脆弱且难以使用(我个人认为它们非常方便,特别是对于比例布局,以及我记得阅读的所有内容,通常不是性能问题).他们引用了this article,它说避免使用AbsoluteLayouts – 但这是一篇特定于Android的文章,它指的是Android.Widget.AbsoluteLayout.

所以这让我思考…… Xamarin.Forms.Layout以某种方式转换成Android.Widget.AbsoluteLayout(我认为它们完全不同,因为Xamarin.Forms允许按比例调整大小/位置)? Xamarin.Forms如何将各种布局转换为特定于平台的布局?

解决方法:

Xamarin Forms中的布局与本机平台上的布局不同. XF Absolute Layout不仅仅是Android AbsoluteLayout的包装器.

XF中的布局类似于它们在WPF和其他Microsoft平台中的工作方式.布局首先要求所有孩子给它一个首选尺寸(测量).然后它使用它的逻辑来安排它的孩子.内置控件包装现有的本机控件(例如,iOS上的UITextBox和Android上的EditText的条目映射).

话虽如此.我同意绝对布局通常不是支持多种屏幕尺寸的好方法.还有其他更灵活的布局可帮助您创建“通用”UI的一般方法.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...