2016-05-16 43 views
0

当屏幕调整大小时,如何维持屏幕上组件占用空间的比例。如何保持屏幕上组件占用空间的比例

我的代码看起来像下面写的 ,如果webview2在屏幕重新调整时增加,则webview1的大小会减小,而尺寸会减小。 我希望webview占用屏幕后屏幕重新调整的空间量相等。

Content = new StackLayout 
     { 
      Spacing = 0, 
      Padding = 0, 

      Children = { 


        wewbview1, 
        new StackLayout 
        { 
         BackgroundColor=Color.FromHex("#000033"), 
         Padding=2, 
         Children= 
         { 
          webview2 
         }, 
         VerticalOptions = LayoutOptions.FillAndExpand 
        }, 

        txt_Search 

       } 
     }; 
+0

在stacklayout添加webview1并添加FillAndExpand。 –

+0

我已经这样做了,webview1和webciew2都有'VerticalOptions = LayoutOptions.FillAndExpand' –

回答

0

我会用一个AbsoluteLayout嵌入两个WebView S作为您可以用比控制指标的高度比作为一个百分比,即嵌入到一个StackLayout在您的“text_search”在那个底部捆绑。

在以下示例中,AFTER除去“txt_Search”(我使用BoxView作为占位符)的高度,上部腹板视图获得剩余的空间中的第二幅图60得到的40%的%。翻转到肖像和一切正确调整大小,并保留40/60拆分后删除“text_search”所​​需的空间。

注:我在Xamarin.Forms XAML中做过,但它是一个简单的转换为代码。

<StackLayout VerticalOptions="FillAndExpand"> 
     <AbsoluteLayout 
      VerticalOptions="FillAndExpand" 
      HorizontalOptions="FillAndExpand"> 
<!--Top WebView--> 
      <BoxView 
       Color="Silver" 
       AbsoluteLayout.LayoutBounds="0, 0, 1, 0.4" 
       AbsoluteLayout.LayoutFlags="All" /> 
<!--Bottom WebView--> 
      <BoxView 
       Color="Maroon" 
       AbsoluteLayout.LayoutBounds="1, 1, 1, 0.6" 
       AbsoluteLayout.LayoutFlags="All" /> 
     </AbsoluteLayout> 
<!--Search txt_Search--> 
    <BoxView 
     Color="Green" 
     HeightRequest="50" /> 
</StackLayout> 

enter image description here