質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.78%

  • Android

    4524questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Xamarin

    254questions

    Xamarin(ザマリン)は、iPhoneなどのiOSやAndroidで動作し、C# 言語を用いてアプリを開発できるクロスプラットフォーム開発環境です。Xamarin Studioと C# 言語を用いて、 iOS と Android の両方の開発を行うことができます。

  • XAML

    166questions

    XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

Xamlで定義した画面のデバッグ

解決済

回答 1

投稿 2017/08/04 11:37

  • 評価
  • クリップ 1
  • VIEW 98

mucya

score 5

「Xamarinエキスパート養成読本」を読みながら、例題を試しています。
ある例題で画面が全く表示されません
画面を定義している Xaml にエラーは見当たりません。
Xaml に問題がありそうな場合、どの様にデバッグすれば良いのでしょうか?

単純に下記のxamlを表示するだけのプログラムを作成し、実行してみましたが
画面に何も表示されません。
このxamlを単純にすると表示されるので、このxamlが問題だと思うのですが、
xaml初心者のためデバッグ方法が知りたいです。

エラーメッセージ

AddressSearch.Xalm
<?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:local="clr-namespace:AddressSearchApp"
x:Class="AddressSearchApp.AddressSearchPage">

<ContentPage.Resources>
<ResourceDictionary>
<style x:Key="labelStyle"
TargetType="Label">
<Setter Property="TextColor" Value="#a8a8a8"/>
<Setter Property="FontSize"  Value="Small"/>
</style>

<style x:Key="fieldStyle" TargetType="Label">
<Setter Property="TextColor">
<OnPlatform x:TypeArguments="Color"
Android="white"
iOS="Black" />
</Setter>
<Setter Property="Fontsize" Value="Medium"/>
</style>
<Style x:Key="fieldView" TargetType="ContentView">
<Setter Property="Padding" Value="10,0,0,0"/>
</Style>

</ResourceDictionary>
</ContentPage.Resources>

<ContentPage.Content>
<ScrollView>
<StackLayout>
<StackLayout Orientation="Horizontal"
HorizontalOptions="FillAndExpand"
BackgroundColor="#545454">
<StackLayout Padding="10,10,10,10"
HorizontalOptions="Start">
<Label Text="住所検索"
TextColor="White"
FontAttributes="Bold"
FontSize="Medium" />
<Label x:Name="AddressLabel"
Text="郵便番号"
Style="{StaticResource lableStyle}" />
<Entry x:Name="AddressEntry"
WidthRequest="100" />
</StackLayout>
<StackLayout Padding="0,0,0,10"
VerticalOptions="End">
<Button x:Name="GetAddressSearchBtn"
Text="検索"
WidthRequest="60"
BorderWidth="1">
<Button.TextColor>
<OnPlatform x:TypeArguments="Color" iOS="White"/>
</Button.TextColor>
<Button.BorderColor>
<OnPlatform x:TypeArguments="Color" iOS="White"/>
</Button.BorderColor>
</Button>
</StackLayout>
</StackLayout>

<StackLayout Padding="10,10,10,10"
HorizontalOptions="Start">
<Label Text="都道府県名"
Style="{StaticResource lableStyle}"/>
<ContentView Style="{StaticResource fieldView}">
<Label x:Name="stateNameLabel"
Text="{Binding stateName}"
Style="{StaticResource fieldStyle}">
<Label.TextColor>
<OnPlatform x:TypeArguments="Color" iOS="Black"/>
</Label.TextColor>
</Label>
</ContentView>

<Label Text="市・区・群名"
Style="{StaticResource labelStyle}"/>
<ContentView Style="{StaticResource fieldView}">
<Label x:Name="cityLabel"
Text="{Binding city}"
Style="{StaticResource fieldStyle}">
<Label.TextColor>
<OnPlatform x:TypeAruguments="Color" iOS="Black"/>
</Label.TextColor>
</Label>
</ContentView>

<Label Text="町・村名"
Style="{StaticResource labelStyle}"/>
<ContentView Style="{StaticResource fieldView}">
<Label x:Name="streetLabel"
Text="{Binding street}"
Style="{StaticResource fieldStyle}">
<Label.TextColor>
<OnPlatform x:TypeAruguments="Color" iOS="Black"/>
</Label.TextColor>
</Label>
</ContentView>

</StackLayout>
</StackLayout>
</ScrollView>
</ContentPage.Content>
</ContentPage>
問題のxamlを

<Label Text="Hello World" />

とすれば、表示される。
また、ContentPage.Resources を定義しないと表示されます。

windows10 Pro
xamarin for visual studio 2017
エミュレータは
Visualstudio_androi-23x86 phone(Android6.0 API23) 

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

+1

Xamarin.Forms の XAML のプレビューができるツールが現在2つあります。

これらを使い、期待通り動作する <Label Text="Hello World" /> の状態から、少しずつ記述を増やしていって、何を行うと期待通り動作しなくなるのか、切り分けるとよいと思います。それぞれWeb検索すると、日本語の情報も多く見つけることができます。

また、XAML の解釈は既定では実行時に行われますが、コンパイル時に行わせることによって、XAML のエラーを事前に知ることもできます。

※質問中のコードは Markdown 記法 に従って ``` で囲むと見やすくなります。

投稿 2017/08/04 12:12

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    以下のような回答は評価を下げられます

    • 間違っている回答
    • 質問の回答になっていない投稿
    • 不快な投稿

    評価を下げる際はその理由をコメントに書き込んでください。

  • 2017/08/08 14:26

    早速の回答有り難う御座いました。
    また、返信が遅くなり申し訳ありません。
    XAML Compiler でXAMLのエラーはつぶす事ができました。
    スペルミスとか大文字/小文字の違いとか、凹みます^^;

    これから、プレビューに挑戦です!
    有り難う御座いました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

ただいまの回答率

91.78%

関連した質問

  • 解決済

    【Sliderのデザイン】

    windows8.1 ストアアプリを、visualstudio2015、OSはWindows10で開発しております。 画像のような、スライダーを作成したいのですが、 自分の力では

  • 解決済

    チェックボックスの挙動

    上の3つのボタンを押したら、 ボタンのタグに対応したgridが表示されるようにしたいです。 上のボタンについてですが、 チェックボックスにしていて、 ボタンをおしたら、色が変わり

  • 受付中

    WPF(XAML)で画像のボタンを実装したい

    このようなボタンをXAMLで実装したいのですが、全く見当もつきません。 指定したキーワードによって青色の部分の色を変更したいです。 どうやれば実装できるでしょうか。 また

  • 受付中

    XamarinFormsのデータバインディングがうまく反映されません

    XamarinFormsのデータバインディングがうまくいきません。 下記のリンク先の情報をもとにXamarinFormsにてデータバインディングをしようとしています。 こちら

同じタグがついた質問を見る

  • Android

    4524questions

    Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

  • Xamarin

    254questions

    Xamarin(ザマリン)は、iPhoneなどのiOSやAndroidで動作し、C# 言語を用いてアプリを開発できるクロスプラットフォーム開発環境です。Xamarin Studioと C# 言語を用いて、 iOS と Android の両方の開発を行うことができます。

  • XAML

    166questions

    XAML(Extensible Application Markup Language)はWPF、Silverlight、Windows PhoneそしてWindows Store appsでユーザーインターフェースを定義するために使われるXML言語です。

閲覧数の多いAndroidの質問