かずきのBlog@hatena

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

Xamarin.Forms の最近の機能で気になってるやつ

Xamarin.Forms 3 系あたりからさっぱり追いかけてなかったので復習も兼ねて。

といいつつ 2.x の機能を見てると、ここらへんもきちんとやったことないので、2.x 系から怪しいかもしれない?

docs.microsoft.com

因みに Xamarin Android や iOS のほうは OS の進化についていってるし、プラグイン使ってやってたことも Xamarin Essentials っていうので結構カバーされてるなぁってのとか、Android のデザイナーとかも改善されてたり、VS 2019 ではインストールサイズが激減してたりとか凄い。

Xamarin.Forms 3.0

FlexLayout

FlexLayout が追加されてる。HTML/CSS の文脈でよく聞くあれかな? ドキュメントはこちら。

docs.microsoft.com

ドキュメント内の聖杯レイアウトって単語初見です。よろしくお願いします。古いたとえですが Java の Swing にある BorderLayout で作れたようなレイアウトを再現するものらしい。WPF では DockPanel 使うような案件ですね。

自分の WPF の記事からですが、こんなの。

f:id:okazuki:20190220112958p:plain

CSS

スタイルシート使えるようになってる。StyleClass っていうプロパティで CSS のクラス名が指定可能で、css ファイルの読み込みは <StyleSheet Source="xxx.css" /> を ResourceDictionary に追加して使うみたい。

Visual State Manager

WPF や UWP でもあった状態に応じて見た目を変えるのに使うやつですね。

docs.microsoft.com

VisualElement から派生したすべてのクラスで CommonStatus という Visual State Group で Normal, Disabled, Focused という Visual State があるので、これを設定することでいい感じに一般的な状態に対する見た目を個々に設定できる。今まではTriggerとか使ってやる感じだったけどわかりやすくなりましたね。

Xamarin.Forms 3.1

Android での下側にタブを表示する機能がサポートされてる~~~!!

docs.microsoft.com

上のリリースノートに書いてあるけど、こんなんで出来るってお手軽かよ。

<?xml version="1.0" encoding="utf-8"?>
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms" 
    xmlns:android="clr-namespace:Xamarin.Forms.PlatformConfiguration.AndroidSpecific;assembly=Xamarin.Forms.Core"
    android:TabbedPage.ToolbarPlacement="Bottom"

Xamarin.Forms 3.2

個人的にはピンとくるものはなかった。

docs.microsoft.com

Xamarin.Forms 3.3

ここもピンとくるものはなかった。

docs.microsoft.com

Xamarin.Forms 3.4

ここも特に

docs.microsoft.com

Xamarin.Forms 3.5

docs.microsoft.com

Features in Preview のところに注目が。

Shell、CollectionView や Visual とかが試験的に追加されはじめてる。マテリアルデザインのレンダラーのところで見つけたものとしては、こんなパッケージあるの知らなかった。

www.nuget.org

Visual の GitHub の Issue を見てる感じだと、頑張れば見た目カスタマイズできるようになるのかなぁ??

Xamarin.Forms 3.6(プレビューリリース)

やっとプレビューリリースのところまで追いついた。 ここも特に目新しいものはなさそうかな。

docs.microsoft.com

Xamarin.Forms 4.0(プレビューリリース)

4.0 のリリースタイミングで再キャッチアップしてもいいのではないかなって思った。Shell とか CollectionView とか Visual あたりが来ると思うので。

docs.microsoft.com