2016-05-16 8 views
0

画面のサイズが変更されたときに、コンポーネントが占有するスペースの比率を画面上で維持する方法を教えてください。画面上のコンポーネントによって占有されるスペースの比率を維持する方法

私は以下のようなコードを持っています。 ここで、画面の再調整でwebview2が増加すると、webview1のサイズは縮小されます。 私は両方のwebviews画面のポストスクリーンの再調整のスペースの同じ量を占めたい。

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

私はあなたがよりパーセンテージで高さの比率を制御し、StackLayoutにその下部に、あなたの「TEXT_SEARCH」にバンドルすることを埋め込むことができるように2つのWebView Sを埋め込むことAbsoluteLayoutを使用します。 「txt_Search」の高さを除去した後、次の例で

(私はプレースホルダとしてBoxViewを使用している)、上部ウェブビューは、残りのスペースの40%を取得し、第二のウェブビュー60を得ます%。それを肖像画に反転すると、すべてのサイズが正しく変更され、「text_search」に必要なスペースを削除した後で40/60分割が維持されます。

注:私は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

関連する問題