2017-07-10 49 views
0

我對Xamarin Forms非常新穎,我試圖拆分XAML頁面,在頂部「行」和底部「行」中有一個背景圖像, 。Xamarin Forms - 半頁背景圖片

Check the following example

灰色背景表示背景圖片我現在有,而且它坐落在ContentPage標籤。在這種情況下,白色背景沒有達到屏幕的整個寬度(因爲它位於ContentPage的Grid.Row內),因此不在屏幕的底部。 如果我只是在網格的第一行添加背景圖片,頁面標題(Iniciar Sesion)將不會有背景圖片。

我只需要將整個ContentPage分成兩行,一個帶有背景圖像,另一個沒有它。 我真的需要在XAML中完成,而不是在C#中。

任何想法?

在此先感謝!

+0

創建一個2行的網格,並將您的圖像放入第一行的BG。然後爲每行添加另一個嵌套網格以包含其他控件。 – Jason

+0

@Jason感謝您的迴應!如果我將背景圖像添加到網格中,我將會使用這些白色填充。我可以擺脫填充的唯一方法是將背景圖像添加到ContentPage。 ContentPage - >圖片=沒有填充,但沒有半/半背景。 ContentPage - >網格 - >圖像=半/半背景,但填充。 – TRDrake

+0

你應該能夠改變網格上的填充,使其填充整個頁面 – Jason

回答

0

您可以輕鬆地實現與相對佈局你的要求(點擊here學習在Xamarin文檔相對佈局):

<?xml version="1.0" encoding="utf-8"?> 
<ContentPage 
    xmlns="http://xamarin.com/schemas/2014/forms" 
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
    x:Class="YourNamesapce.YourPage"> 
    <RelativeLayout> 
     <Image 
      RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, 
      Property=Width,Factor=1}" 
      RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, 
      Property=Height,Factor=0.5}" 
      Source="icon.png" 
      Aspect="AspectFill"/> 

    <Grid 
     RelativeLayout.WidthConstraint="{ConstraintExpression 
     Type=RelativeToParent,Property=Width,Factor=1}" 
     RelativeLayout.HeightConstraint="{ConstraintExpression 
     Type=RelativeToParent,Property=Height,Factor=1}"> 
     <!-- Your Grid Layout--> 
    </Grid> 
</RelativeLayout> 

默認背景頁面顏色是白色的,所以這將工作,否則將頁面的背景色屬性設置爲所需的屬性。