我最近和我的團隊討論了Xamarin.Form的佈局,他們認爲Xamarin.Forms.AbsoluteLayout很脆弱並且很難與(我個人認爲它們非常方便,特別是對於比例佈局,以及我記得閱讀的所有東西,它們通常不是性能問題)。他們引用了this article,其中說避免使用AbsoluteLayouts - 但是這是一個Android特定的文章,它指的是Android.Widget.AbsoluteLayout。Xamarin.Forms佈局如何轉換爲平臺特定的佈局?
因此,讓我想... Xamarin.Forms.Layout以某種方式轉化爲Android.Widget.AbsoluteLayout(我認爲他們是完全不同的,因爲Xamarin.Forms允許比例大小/位置)?如何確實 Xamarin.Forms將各種佈局轉換爲平臺特定的佈局?
https://github.com/xamarin/Xamarin.Forms – Jason
非常感謝您的參考,我將嘗試挖掘代碼並發現答案。你會說明確地避免Xamarin.Forms.AbsoluteLayout? – jbyrd
@jbyrd「Android.Views.View」的底線是基於Forms的VisualElementTracker直接調用帶有x,y,width,height參數的本地View.Layout方法來控制控件放置。表單有自己的層次結構父級佈局管理器來執行計算。我有一個客戶端,通過本地轉換爲Android LayoutParams和iOS約束替換了整個Forms佈局系統,它具有基於Fody的構建轉換和運行時緩存系統,並且實現*幾乎*原生布局速度,完全吸引了Forms的佈局經理。 – SushiHangover