かずきのBlog@hatena

すきな言語は C# + XAML の組み合わせ。Azure Functions も好き。最近は Go 言語勉強中。日本マイクロソフトで働いていますが、ここに書いていることは個人的なメモなので会社の公式見解ではありません。

Xamarin.FormsでPrism.Formsを使ってPCLに非対応なライブラリを使う方法

例えばMicrosoft.AzureのStorageのライブラリなんかがXamarin.AndroidとXamarin.iOSには対応してるけどPCLには対応してないといった感じです。 被害者がここに。 @chomado ウワアアあああああああああああああああああXamarin .Forms PCL の私 爆死\(^o^)/…

Xamarin.Formsで画面レイアウトを作るためのレイアウトコントロールの必要最低限

Xamarin.Formsで思い通りのレイアウトを組みたい。 そんな時には、レイアウト系のコントロールを押さえておくといいです。 公式ドキュメント Layouts - Xamarin Layoutコントロール Xamarin.Formsでは、複数のコントロールを配置するときには、あらかじめ定…

Xamarin.FormsのListViewで行単位で高さを変えるには

何もしないと同じになるっぽい。 違う高さにするには、以下のようにHasUnevenRowsプロパティをTrueに設定すればいい。 <ListView ... HasUnevenRows="True"> ... </ListView> おしまし。

Xamarin.Formsでタブページを使う

TabbedPageを使うといいということみたいです。 TabbedPage内にはタブとして表示したいページを置いて行って、タブのタイトルにはPageのTitleが表示されるという動きをしています。 意外と簡単だった。 Prismを使ってNavigationPage内にTabbedPageをネストし…

Xamarin.FormsでLabelに下線を引きたい

デフォルトで引けないんですね。知らなかった。 Effectを使おう ということでカスタムレンダラー案件かなと思ったらEffectでいけるっぽいです。 Android Androidに以下のようなクラスを追加します。 using Android.Widget; using Xamarin.Forms; using Xamar…

Visual Studio Moble Center触ってみた

Visual Studio Mobile Centerの申し込みをしたら、先日招待メールもらったので触ってみました。 初期画面 ログインするとこんな感じの画面になります。 アプリの作成 Add a new appというボタンがあるので押すと、アプリの作成画面になります。 OSの選択が排…

ReactiveProperty 3.4.0をXamarinで使う場合

Reactive Extensions 3.1.xがPCLにうまく入らないので、.NET Standardにプロジェクトを変換してから入れてください。 何かRx安定しないな…。

Xamarin.Formsでボタンの2度押しをReactivePropertyを使って抑止してみよう

お題の通りです。 こんな感じでReactiveCommandを普通に使うと連打すると2重で画面遷移したりします。 using Prism.Mvvm; using Prism.Navigation; using Reactive.Bindings; using System; namespace PrismUnityApp12.ViewModels { public class MainPageVi…

ReactiveProperty 3.4.0をリリースしました

www.nuget.org Reactive Extensionsを3.1.0から3.1.1に更新しています。 DependencyObject(UWP & WPF)に以下の拡張メソッドを追加しました ObserveDependencyProperty: DependencyPropertyの変更を監視するIObservable<Unit>を返します。 ToReadOnlyReactiveProper</unit>…

Xamarinで処理中を表すインジケーターを出したい

先日Cognitive Serviceを使った笑顔判定機を作りました。 こいつですが、Web上のAPIを呼び出して回線状況に応じては、そこそこ時間がかかるにも関わらず、処理中を示すUIが表示されていませんでした。 Xamarin.Formsでは、ActivityIndicatorクラスを使うこと…