nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Development Technologies。

Xamarin.Forms

Xamarin.Forms 3.1.0.637273上で Xamarin.Forms.GoogleMaps または Xamarin.Forms.Maps がビルドできない

と思ったのですが、次のような提言をいただきました。 これAndroid SDKマネージャのextraからインストールすれ、的なこと言われてませんでしたか?— ざまりん.ふぉーむずのソースコード読むマン (@ticktackmobile) 2018年7月18日 上げちゃってログが行方不明…

Xamarin.Forms.GoogleMaps.Bindings 2.2.0リリースしました

Xamarin.Forms.GoogleMapsのバインディング対応ライブラリを更新しました。 更新内容はひとまず以下の通り。 UpdateRegionBehaviorの追加 UpdateCameraPositionBehaviorの追加 MoveToRegionBehaviorでanimatedを指定できるように変更 近いうちに、もう少し本…

Xamarin.Forms.BehaviorsPack 2.0.0 リリース:究極に簡単に全てのイベントへコマンドをバインドできるようになりました

個人的にはタイトルは煽りでもなんでもなく、本気のつもりです。 https://www.nuget.org/packages/Xamarin.Forms.BehaviorsPack/2.0.0 例えば、PageのAppearingイベント発生時にCommandを実行したい場合、次のように記述すればOKです。

App Center Analyticsを使い倒す - 静的コード生成を活用したXamarinにおけるAOP活用

本エントリーは、つぎの二つの機会に発表した内容をまとめ直したものです。 JXUGC #24 春の App Center 祭り de:code 2018 資料はこちらに公開しています。ただスライドは発表の補助資料な為、資料だけ見ても伝わり切りませんので、本エントリーもあわせてご…

Xamarin.Forms 2.5.xで「"Xamarin.Forms.Build.Tasks.GetTasksAbi" タスクをアセンブリ~から読み込めませんでした。」というエラーが発生する場合の対処方法

とりあえずメモ程度に。 Xamarin.Formsのバージョンを最新に更新する(2.5.0.77107だと無理かも知れません) ソリューションをクローズして開き直す これでだめなら、Visual Studioを再起動しましょう。 一応私はこれでいけました。 海外のフォーラムでも同…

Xamarin.Forms 2.3.4.247で"XamlCTask task failed unexpectedly"の回避方法

Xamarin.Formsではバージョンに関係なく、次のようなケースで元々"XamlCTask task failed unexpectedly"が発生する事がありました。 ソリューション内のプロジェクトによってXamarin.Formsのバージョンが違う (よくUWPのプロジェクトだけ更新に失敗したりし…

Xamarin(Formsもね)で.NET Standard 2.0なライブラリを利用する

Visual Studio 2017 Update 3がリリースされたことで、待望の.NET Standard 2.0が利用できるようになりました。 XamarinでもAndroidやiOSからは既に利用可能なようです。UWPは少々お待ちください?(少々っていつ?誰か教えて さて、使うにはまずは.NET Stan…

KAMISHIBAIセルフ プロモーション:一貫性を保ったイベント通知

先日これまでのXamarin.Formsの経験や、PrismのPageNavigationServiceへの貢献を通して得たノウハウを整理して形にした、KAMISHIBAI for Xamarin.Formsをリリースしました。 前述のエントリーや、Github上のドキュメントでもKAMISHIBAIのメリットについては…

Xamarin.Forms.GoogleMaps.Bindings 2.1.0の追加機能解説

昨日、Xamarin.Forms.GoogleMaps.Bindings 2.1.0のリリースを告知しましたが、あれだけだと不親切なので使い方が少し癖のある部分の解説を追記しておきます。 www.nuits.jp 追加した機能のうち、つぎの3つは少し使い方が特殊です。 Support MoveCamera Suppo…

Release Xamarin.Forms.GoogleMaps.Bindings 2.1.0

ちょっと放置状態になってしまっていたXamarin.Forms.GoogleMaps.Bindingsを、「だいたい」Xamarin.Forms.GoogleMaps 2.1.0まで対応しました。 未対応機能があれば、良かったら教えてください。 とりあえず、対応内容は以下の通りです。 Transition to .NET …

KAMISHIBAI for Xamarin.Forms 1.1.0をリリースしました。

ServiceLocatorを追加して、Page生成のDependency Injection対応が可能となりました。 KAMISHIBAIをPrismと併用する記事を書かなきゃなと思っていたら、神のようなタイミングで記事化してくださった方がいらっしゃいまして。 blog.okazuki.jp かずきさん、あ…

Xamarin.FormsでListView選択時にエレガントに詳細画面へ遷移する2つの方法 with 紙芝居 & BehaviorsPack

エレガントは言い過ぎ&タイトル長い上&ダイマでごめんなさい。 KAMISHIBAI for Xamarin.FormsとXamarin.Forms.BehaviorsPackの合わせ技でこんな簡単にListViewで選択されて画面遷移してパラメーター渡しするのが簡単に書けますよという紹介です。 こんな感…

KAMISHIBAI for Xamarin.Forms 1.0.0をリリースしました。

ここしばらく作っては消しを繰り返していた、お手製画面遷移ライブラリ をリリースしました。コードとドキュメントはGithub上に公開しています。利用の際はNuGetからインストールして利用してください。 目指したのは Xamarin.Formsで可能なあらゆる画面遷移…

REST APIをAzure MobileApps SDKを利用して実行する

前回のエントリーではMicrosoft.Rest.Clientを利用してAzure API AppのREST APIを利用しました。 www.nuits.jp ちなみにこれ、AutoRestというプロダクトの一部みたいですね。今日もう少し調べてて知りましたw さて、前回のエントリーを書いたところ、Mobile…

Hello, Azure API Apps with Xamarin.Forms

前回、Azure API Appの簡単な利用方法を解説しました。 www.nuits.jp 今回は、これをXamarin.Formsから利用してみましょう。 Xamarinプロジェクトを作成する XamarinにAPI App呼び出しを組み込む MainPageViewModelの作成 MainPage.xamlの修正 APIクライアン…

Xamarin.Formsで「ビルド アクション 'EmbeddedResource' は、プロジェクトのターゲットの 1 つ以上でサポートされていません。」の解決方法

2017年7月現在、良く遭遇します。 最初に開いたソリューションで良くなるかも。 起きたら、ソリューションを閉じて開き直したら99%直ります。 ゴミみたいな記事でゴメン(´・ω・`) 追記: 手動でビルドアクションを一度コンパイルにして埋め込みリソースにし…

Prism 6.3の変更点 その2 画面遷移関連(for Xamarin.Forms)

Prism 6.3のXamarin.Forms向けで最も大きな変更があったのが画面遷移関連です。 機能追加もありますし、注意が必要な破壊的変更もあります。

Prism 6.3の変更点 その3 新規要素(for Xamarin.Forms)

本エントリーではPrism6.3で新たに追加された機能をいくつか紹介します。 EventToCommandBehavior IApplicationLifeCycleの追加 IApplicationStore IDeviceService

Prism 6.3の変更点 目次(for Xamarin.Forms)

Prism6.3のアップデートにおける変更点をまとめました。 以下をご覧ください。 www.nuits.jp www.nuits.jp www.nuits.jp 今回はこれだけ!

Prism 6.3の変更点 その1 Pris.Core

Prism 6.3がリリースされてからすでに2カ月。書こう書こうと思っていたのですが、後回しにしまくっていたのでここに変更点をまとめます。 for Xamarin.Formsの範囲が対象となります。 と、言っておきながら、本エントリーではWPFおよびUWPとも共通のPrism.Co…

Xamarin.Forms用の汎用Behaviorライブラリをリリースました

Xamarin.Forms用の汎用Behaviorライブラリをリリースました! www.nuget.org コード&詳細ドキュメント(まだ下記中ですが)はこちらにあります。 github.com たとえば、こんな感じでイベント発生時にEventのパスを指定してEventのプロパティを引数にCommand…

.NET StandardプロジェクトをxUnitでテストする方法

.NET Standardのプロジェクトをテストするために、.NET Standardのテストプロジェクトを作成するとxUnitのテストが認識されずテストできません。 現状ではつぎのようにすることで対応できます。 Testプロジェクトを.NET Coreのコンソールアプリケーションと…

Xamarin.FormsでAndroidやiOSで例外がさっぱりわかんねえよ!って時の一つの解決方法

なんだかVisual Studio 2017になって、例外が余計に分かりにくくなったような気がするのは気のせいでしょうか? 本当、どうでもいいことでミスしていて(MasterDetailPageのMaster側のPageにTitleを設定するのを忘れていた。。。とか)、でもそれに気が付け…

Xamarin.Forms Navigation Overview

久しぶりにJXUGでしゃべらせていただきました。 完全に物理バックボタンを忘れていたので、そのうちどこかで追記なり補足します。 jxug.connpass.com 発表に利用した資料はこちらに公開しています。 Xamarin.forms navigation overview from Atsushi Nakamur…

【メモ】PrismでMasterDetailPageと付き合うコツ

そのうち、きっちりまとめ直しますがひとまずメモを。 MasterDetailPageを利用する際に、Prismの画面遷移イベントとライフサイクルイベントをうまく活用するコツをメモっておきます。

【メモ】INavigationがPlatformによって実装が異なる話

あくまでメモでなのでご注意を 網羅的な説明になっていません 内容の正誤を十分検証していません つぎのようなコードを呼ぶとき page.Navigation.PushAsync(new NewPage()); NavigationプロパティはINavigationインターフェースの実装クラスで、その実態はNa…

【Xamarin.Forms】DisplayAlertを表示するBehavior

みなさんWPF用のMVVMインフラストラクチャであるLivetをご存知ですか? ふとしたきっかけで、Livetの機能を見ていて 「指定されたEventでダイアログを表示し、その後ViewModelをよびだす」 機能が、Xamarin.Formsでも使えると便利だなと思いました。 そこで…

【Xamarin.Forms】ListViewで行選択時に処理を実行する、たった一つの冴えたやり方?

2017.07.08 書いていた記事がなんだか全面的に誤っていたことに気が付いたのでリライトします。 ListViewで行が選択されたとき、それをコマンドに渡しつつ選択された行をクリアする最も冴えたやり方は次の通りでした。 ListViewのSelectedItemをハンドルする…