かずきのBlog@hatena

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

Xamarin

MacのXamarin.iOSでSegueが作れない

Ctrl + Dragでページを結んでもSegueが作れないというかメニューが一瞬出て消えるっていう動きをしていました。ググってみるとStackoverflowが引っかかりました。 stackoverflow.com トラックパッドの設定で「強めのクリックと触覚フィードバック」のチェッ…

かずきのXamarin.Forms入門のKindle版だしました(Prismもあるよ)

先日SlideShareに公開したXamarin.FormsのPDFですが Xamarin.forms入門 from 一希 大田 www.slideshare.net こちらは、SlideShareにログインすると無料でダウンロードできます。 それに加えて、Kindleで販売も始めました。こちらはKindleで見たい人向けです1…

Xamarin.Forms入門のPDF作りました(Prismもあるよ)

SlideShareでログインしてダウンロードできるようにしています。是非ダウンロードしてみてください!200ページちょっとあります。 Xamarin.forms入門 from 一希 大田 www.slideshare.net 目次 1 はじめに 1.1 ターゲットプラットフォーム 1.2 Xamarin.Forms…

Xamarin.Forms + PrismでSQLiteを使ってみよう

モバイル環境でのデータベースといったらSQLiteがデファクト!ということでXamarin.Forms + Prism.Formsの環境で試してみましょう。 NuGetパッケージの導入 使用するパッケージはSQLite-net-pclです。(似た名前のが多いので注意) www.nuget.org プラットフォ…

Xamarin.FormsでBehaviorのTriggerとActionを作る

Xamarin.Formsのドキュメント上は見つけれなかったけど、ソースコード的にはTriggerとActionがあったりします。 github.com ただ、この人たちはBindingに対応してないという、ちょっと悲しい感じに仕上がってます。なので、XamarinのBehaviorをベースにBindi…

Xamarin.FormsのBehaviorをBinding可能にする

デフォルトだとBindingできないんですよ。ということでソリューションは以下のようにします。 github.com BindingContextが伝搬しないなら伝搬させればいいじゃない?ということで手動でせっせと伝搬させてます。 これくらいデフォルトで面倒見てほしかった……

Xamarin.FormsのListViewでタップされた項目をスマートにViewModelに渡す方法

EventToCommandBehaviorを使います。コードはこちらを参考に。 github.com この時、こういうBehaviorを作っておくとListViewの選択がされなくなって捗ります。 using Xamarin.Forms; namespace PrismUnityApp2 { public class NotSelectableListViewBehavior…

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の選択が排…

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

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

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

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

Xamarin.Formsで笑顔測定をしよう(AndroidとUWP)

最近笑顔してますか?こんな感じの笑顔測定アプリを作ってみようと思います。これならボッチでも笑顔の練習できるよ! 左がニュートラルな顔、右が笑顔の場合です!スコアが変わってますね。 ということで、Cognitive ServiceのFace APIを使って笑顔判定する…

Microsoft Azure Mobile AppsのQuickstartのTodoアプリがUWP版だと例外で落ちることがある

追記 Xamarin.Forms 2.3.3系が正式リリースになったので、記事の内容をアップデート 最近、Microsoft Azure Mobile AppsでQuickstartのTodoアプリのひな型にUWPが追加されました。 小躍りするくらいうれしいことなのですが、このTodoアプリですが追加した複…

クライアントサイドから見たConnect(); 2016はどうだったかという感想

UWPに関しては華麗にスルーされてました。(悲しい) ただ、Visual Studio 2017 RCでは、試してないけどUWP開発のための機能強化も結構含まれてるのでさみしくなんかありません。 デモアプリもUWP多かったですしね! ということで本題です。 クライアントサ…

当然っちゃ当然だけどXamarin.FormsでHoloLens対応アプリ作れます

HoloLensではUWPが動く。 Xamarin.FormsではUWPの開発が可能。 ということで当然ですが動きます。HoloLensでXamarin.Formsで作ったアプリが!! iOS, Android対応アプリをXamarin.Formsで作ってる人は、やってみてもいいのではと思いました。 実験 Prism.For…

Azure Mobile Appsのローカル同期機能で作成されるDBの中身を見てみよう(Android版)

さて、ローカル同期したAndroidのデータをひっこぬいてBrowser for SQLIteで中身を見てみたいと思います。 今回は、エミュレータで実行してる前提でコマンドを書いています。 まずadbのshellでつなぎます。 adb -e shell アプリパッケージ名を調べます。 ア…

JXUG #18 「Azure Mobile Apps入門」資料公開

JXUG #18で発表してきました。 デモが想定の半分くらいしかできなかったのが心残り(XAMLインテリセンスないと書けない体になってる…)ですが、資料を公開しておきます。 Azure Mobile Apps入門—大田 一希

Visual Studio Team ServicesからXamarin Test Cloudを使ってみよう(Android編)

iOS編はあるのかって?Mac持ってないのでできないのでMac持ってる人だれかお願いします。 Xamarinプロジェクトの作成 ということで、テスト対象のプロジェクトを作りましょう。 今回は、Prismのテンプレートパックを入れたら作られるプロジェクトテンプレー…

Azure Mobile AppsでテーブルのクエリにIN句を使いたい

ODataはin句をサポートしてないらしい?ので出来ません。(完) こんな定義らしい。 filter = '$filter' EQ boolCommonExpr boolCommonExpr = ( isofExpr / boolMethodCallExpr / notExpr / commonExpr [ eqExpr / neExpr / ltExpr / leExpr / gtExpr / geEx…

モバイルアプリなどの練習用WebAPIを作成しました

モバイルアプリやUWPの練習でたたける簡単なAPIがほしいかも?ということで作ってAzureに置いてみました。一応認証のかかったシンプルなAPIです。 OAuth2で、ユーザー名admin、パスワードp@ssw0rdでトークンが取得できます。 Web APIは以下のような感じです…

Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「プッシュ通知(Androidだけ)」

過去記事 Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms) - かずきのBlog@hatena Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「DBの変更」 - かずきのBlog@hatena Azure MobileApps…

Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「オフラインデータ同期」

過去記事 Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms) - かずきのBlog@hatena Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「DBの変更」 - かずきのBlog@hatena Azure MobileApps…

Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「ローカルデバッグ」

過去記事 Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms) - かずきのBlog@hatena Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「DBの変更」 - かずきのBlog@hatena ローカルデバッグ…

Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)「DBの変更」

過去記事 Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms) - かずきのBlog@hatena DBの変更 JavaScriptがバックエンドのときはいい感じにDBの変更をしてくれる(それはそれで怖いっちゃ怖いけど)んですが、.NETバックエン…

Azure MobileApps + Xamarin.Forms開発の始め方(.NETバックエンド + Prism.Forms)

というテーマで書きます! サーバーサイド(Azure) Microsoft Azureには、モバイルバックエンドの開発をお手軽にするための、Mobile Appsというものがあります。 これは、サーバーサイドをnodejsのexpressベースのフレームワークで開発するか、ASP.NET WebA…

今さら入門するMVVMに必要な技術要素(Xamarin.Forms & UWP)

Model View ViewModelパターン(以下MVVMパターン)が登場して約10年になります。 ここらへんで一度MVVMを実装するうえで必要になる技術要素を振り返ってみたいと思います。 その前にMVVM MVVMは以下のWikipediaあたりでも見てください。 Model View ViewMod…