Xamarin
Xamarin.Formsでは通常、Viewまで1コードで書けるのが利点ですがケースによっては個別に調整したいケースもあるかと思います。 通常、そういった場合は CustumRendererやEffectsの出番です。 しかしケースによってはページデザインをまるっと置き換えたいと…
ご要望をいただき、Visual Studioでプロジェクトのbin・objフォルダを削除する拡張機能をアップデートして、packagesフォルダを削除する機能を追加しました。 なお、すでにインストールされている方で、アップデートができない方がいらっしゃるかもしれませ…
以前、NavigationServiceの解説回にてIConfirmNavigationの説明をしました。 Prism for Xamarin.Forms入門 NavigationService Deep Dive - nuits.jp blog IConfirmNavigationは端的に言うと、画面遷移時に条件によって遷移を抑止することができる機能です。 …
なんか何名か困ってる方を見かけたのでまとめておきます。
さて一つ前の記事で、PrismのINavigationAwareを代替するのに、PageクラスのAppearingイベントとDisappearingイベントが利用できる。 というお話をしました。 www.nuits.jp 今回はそれを簡便に実現するための方法を紹介したいと思います。 以前、イベントに…
さて下記のエントリーで、PrismのINavigationAwareを代替するのに、制限付きではあるもののNavigationPageクラスのイベントを利用できるという紹介をさせていただきました。 www.nuits.jp 今回は実際の実装を見てみたいと思います。 まぁ大したものではない…
これまで何度かNavigationServiceについて取り扱った記事を書いてきました。 特に以下のエントリーでは、INavigationAwareとIConfirmNavigationについて記載しました。 www.nuits.jp しかしコメント欄でも話題になっているように、現時点では幾つか期待した…
ここ何回か、なんちゃって書籍ビューアを題材にした、Xamarin.Formsアプリを紹介してきました。 github.com 今回は、そのコードの解説を試みたいと思います。 今回紹介するコードは、以下の要素が含まれています。 Xamarin.Forms Prism for Xamarin.Forms Re…
先日、なんちゃって書籍ビューアのコードを紹介しました。 www.nuits.jp そのソースを少し手直しして、ついでにコードによる単体テストも追加してみました。 良かったら参考にしていただけると幸いです。 github.com ちなみにテスト対象はViewを除く、ViewMo…
今回はPrismは使っていますが、Prism成分は控え目です。 書籍ビューア的なアプリで、ドロワーに目次があり、目次を選択したら該当ページへ飛ぶし、ページをめくっていると開いているページの状態にドロワーの中の目次の選択状態もちゃんと同期されるアプリを…
さて、今回はCommand編です。 WPFやXamarin.Formsを利用されている方にとっては既に当たり前の機能かもしれません。 Commandって何よ?って方は、以前に概略をまとめたエントリーがありますので、まずはこちらからご覧ください。 www.nuits.jp さてPrismにも…
さて、前回はすこし「よりみち」をしてDependencyServiceのおさらいをしました。 今回はPrismにおける、DependencyServiceの取り扱いについてお話ししたいと思います。 そのうえで、なぜそういった機構が必要なのかを解説したいと思います。 「DependencySer…
今回はPrism.Formsから少し離れて、Xamarin.Formsの提供するDependencyServiceについて解説します。 と言うのも 「Prism.Forms上でDependencyServiceとどう付き合うか?」 と言った内容のエントリーを書こうと考えていたのですが、当然ですがDependencyServi…
お久しぶりです。 少し間が空いてしまいました。 本当はもう少しNavigationServiceを掘り下げたかったのですが、ちゃんと説明するにはもう少し時間がかかりそうなので、先にPageDialogServiceの説明をしたいと思います。 NavigationServiceについては、機会…
本エントリーは、Prism for Xamarin.Forms入門の連載記事へのインデックスです。 そろそろエントリー数が増えてきたのでまとめました。 目次 はじめに Hello, Prism コラム01:PrismとDIコンテナ ViewModelLocator NavigationService Quickstart Deep Dive I…
さて、画面遷移と前画面への戻り方を説明いたしました。 www.nuits.jp 今回は、もう少し踏み込んで画面遷移の要素を一つずつ見ていきたいと思います。 なお本エントリーは連載記事「Prism for Xamarin.Forms入門」の一部となっております。 以下に目次があり…
さて、今回のお題目はNavigationService、つまり画面遷移です。 Prismは非常に強力な画面遷移の機構を提供しています。 Viewから完全に分離された、ViewModel主体の画面遷移 DeepLinkingサポート アプリケーション再開時のナビゲーションスタックの再構築 な…
さて、今回からいよいよ個々の細かいエッセンスを掘り下げて解説していきたいと思います。 栄えある?第一回目はViewModelLocatorです。 しょぼいと思うかもしれませんが、Prismを利用してアプリケーション開発を進める上で、重要な起点となる要素です。 本…
さて、前回はPrism.FormsのHello, Worldの記事を書かせていただきました。 nuits.hatenadiary.jp 今回以降は、いよいよ個々のエッセンスを掘り下げて行きたかったのですが...どの話をするにしても、「なぜその機能が必要なのか?」を説明しようとすると、ど…
前回は、Prism.Formsのイントロダクション的なエントリーを記載しました。 nuits.hatenadiary.jp 今回は実際にPrism.Formsを利用したアプリケーションをテンプレートから作成し、作成されたアプリケーションが、どのように動作しているのか解説してみたいと…
先日(2016年8月11日)、ついに待ちに待ったPrism.FormsのStable版がリリースされました。 今まで比較的長い間Previewであったため、待ち望んでいた人も多いのではないかと思います。 私自身、PrismのWPF版を仕事でも利用しており、ありていに言ってPrismフ…
XAML編と言いつつ、XAML編しかありませんがw だって、C#のコードからは普通にやればいいだけなので。。。 と言う分けで、簡単に紹介しておきます。
昨晩、@omanukeさんがこんな記事をエントリーされました。 d.hatena.ne.jp で、これが発端でちょっと話が盛り上がったので、その結果分かった事をちょっとまとめたいと思います。
Xamarinの公式ブログで、Tシャツコンテストが開始されました! Xamarin+AzureのEasy Tableを使った簡単なアプリを作って、動画を公開すれば「たぶん??」誰でももらえるようです。 (確証はないので貰えなかった場合でも怒らないでね) blog.xamarin.com …
こちらはコンテンツを削除します。 以下の記事をご覧ください。 www.nuits.jp
ICommandとはなにか ICommandの概要 void Execute(object parameter) bool CanExecute(object parameter) event EventHandler CanExecuteChanged; RelayCommand・DelegateCommandとはなにか DelegateCommandの簡単な利用方法 ICommandとはなにか XAMLで発生…
表題の通りですが、2016/06/13時点でStable Channelでも利用可能になっています。 developer.xamarin.com TwitterのTLでご存じない方が何名かいらっしゃったようなので、告知?的に書いておこうかと。 Visual Studioで開発している方には非常に便利な機能な…
数日前にAyaseってIDのオータガーさんと、下のような会話をしました。 @AyaseSH TriggerでOnAppearingイベント捕まえてCommandバインディングとかじゃ上手くいかない感じですかね?それともOnAppearingの実行中の状態(始まり~終わりまで)を正確に欲しい案…
2016.06.29追記 このエントリーの投稿後に、ElementNameとx:Referenceの気になる情報をいただきました。 いかにまとめましたので、良かったらあわせてお読みください。 nuits.hatenadiary.jp 追記終了 本来、ちゃんとMVVMしててViewModelにバインディングし…
Xamarin.FormsでSQLiteを利用するにあたって、色々悩んでアドバイスも貰って考えた結果をここに残しておこうと思います。 あくまで私の選択であって、ほかの人にもこれがベストな回答だとは限りませんが参考の一つになれば幸いです。