Xamarin.FormsでImageの上にLabelを重ねる
Xamarinです。Xamarin.Formsです。 画像があって、画像の上に文字を重ねる必要があったので、試してみました。 ここではImageとLabelの組み合せでやっていますが、多分他の物でも出来ると思います。
といっても方法はかなり単純で、Gridレイアウトに場所を指定せずに書くだけです。 XAMLで書くと以下のような感じ。
<Grid> <Image x:Name="image" /> <Label Text="Hello World" VerticalOptions="Center" HorizontalOptions="Center" /> </Grid>
これでimageの上にHello Worldという文字が重なります。簡単。
C#だけで書く場合は以下のようになります。
Content = new Grid { Children = { new Image { Source = /* ここは適当に */ }, new Label { Text = "Hello World", HorizontalOptions = LayoutOptions.Center, VerticalOptions = LayoutOptions.Center }, }, };
やっぱり簡単。
ちなみに、重なりの順序は記述した順番になるようです。 つまり、後にあるものほど上に、始めにあるものほど奥に。