2016-10-01 18 views
0

これは本当にシンプルな(おそらくそうです)ようですが、これについての情報を見つけることはできません。上部の全幅白のギャップがあり enter image description herec#Xamarin Forms ContentPage - Gap on Top

は見てみましょう。それは何ですか?どのように私はそれを取り除くか、それにアクセスする(テキスト、ボタン、アイコンなどを追加する)のですか?

このテストでは、私のコードは非常に簡単です。 XAML:

<?xml version="1.0" encoding="utf-8" ?> 
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
    xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
    xmlns:maps="clr-namespace:Xamarin.Forms.Maps;assembly=Xamarin.Forms.Maps" 
    x:Class="TestApp.TestPage"> 
    <StackLayout VerticalOptions="FillAndExpand" Padding="0"> 
     <maps:Map x:Name="TestMap" IsShowingUser="true" MapType="Street" /> 
    </StackLayout> 
</ContentPage> 

は.cs:

using Xamarin.Forms; 

    namespace Test 
    { 
     public partial class TestPage : ContentPage 
     { 
      public TestPage() 
      { 
       InitializeComponent(); 
      } 
     } 
    } 

app.xaml:

<ResourceDictionary> 
    <Style TargetType="NavigationPage"> 
     <Setter Property="BarBackgroundColor" Value="White"/> 
     <Setter Property="BarTextColor" Value="Black"/> 
    </Style> 
    <Style x:Key="DefaultPageStyle" TargetType="ContentPage"> 
     <Setter Property="BackgroundColor" Value="White"/> 
    </Style> 
</ResourceDictionary> 

編集:@Vulcanリーからのコメントは、私を送りましたfiへの道に欠落している(キー)情報を検索します。だっ

は、App.xaml.cs内で、私が持っていた:だから

public App() 
{ 
    InitializeComponent(); 

    MainPage = new NavigationPage(new TestPage()); 
} 

、これはナビゲーションメニューに関係しています。 どうすればアクセス、フォーマット、または削除できますか?

+0

スクリーンショットはどのデバイスまたはエミュレータでテストしていますか? –

+0

@Brian Mains:このスクリーンショットはGenymotionからのものです。しかし、デフォルトのエミュレータで試してみると、基本的に同じことが分かります。 – Jahmic

+1

あなたのスーパーシンプルをコピーします。 xamlを実行し、エミュレータで実行してください。スペースはありません。次の2エミュレータの画面キャプチャが表示されます。 http://xamarindoggy.azurewebsites.net/Content/map1.png http://xamarindoggy.azurewebsites.net/Content/map2.png –

答えて

2

実際には、空白はナビゲーションバーです。

変更この:

new TestPage()

それとも、まだナビゲーションページとして最初のページを作りたい場合は、単にナビゲーションバーを削除する

new NavigationPage(new TestPage())

NavigationPage.SetHasNavigationBar(this, false);

私はこの変更がXamarin.Forms 2.3.xで導入されたことを覚えています。

0

VerticalOptions="FillAndExpand"にマップを設定してみてください。 StackLayoutは子どもの大きさだけになりたいので、StackLayoutにはあまり効果がありません。地図のVerticalOptionsの設定が機能しない場合は、代わりにHeightRequestプロパティを設定することができます。

すべてが失敗した場合は、代わりに地図をGridに入れることをおすすめします。