kamulog

xamarin.formsのネタなど

Xamarin.Forms

スタートアップトレース (Startup Tracing / Profiled AOT) を使ってXamarin.Androidの起動速度を向上させる

この記事はXamarin Advent Calendar 2020の9日目の記事です。 Xamarin.Androidの起動が遅いという問題が長年ありましたが、最近はスタートアップトレースという機能である程度改善できるようになっています。 この機能は、残念ながら公式ドキュメントに記載…

Xamarin.Forms で ダークモードにほぼ完全に対応し、「端末の設定を使う」にも対応する

Twitterアプリにある、ダークモード対応の ライト ダーク 端末の設定を使う の3択パターンを Xamarin.Forms で実装してみました。 サンプル github.com youtu.be Forms 側の対応 Xamarin.Formsでのダークモード対応は現時点でいくつかの選択肢があります。 …

Sign in with Apple を Azure AD B2C で使う時にどハマりしたこと

Azure Active Directory B2C を復習帳というアプリで利用してます。 これを導入した理由は、認証がめんどくさくて丸投げしたくて、Functionsなど他でAzure使ってるので 合わせてAzureで良いかという安易な理由からでした。 さて、Sign in with Apple の必須…

SettingsView ver.1.1.1 新機能の紹介

ちびちびと development ブランチで大改造してたんですが、ここら辺で一区切りしようとpreとしてリリースすることにしました。 色々と変更がありますが、主な変更をご紹介します。 github.com CustomCell Section Header Footer CustomView TemplateStartInd…

Xamarin.Forms CarouselView を試してみる

この記事は Xamarin Advent Calendar 2019 の 5日目の記事です。 CarouselViewの公式版が試験版で実装されていたので試してみました。 docs.microsoft.com 結果 www.youtube.com 終盤のAndroidのボタンクリックの動きは想定外です笑 下準備 試験版なので App…

Xamarin.Forms で Widget を実装する

この記事は Xamarin Advent Calendar 2019 の 4日目の記事です。 JXUGの8月の発表で Widget の実装について一瞬だけ触れたのですが、一瞬すぎたので改めてブログに書いてみます。 Widget は iOS では Today Extension、 Android では AppWidget と呼ばれてい…

Xamarin.Forms の TriggerAction を使って Trigger に連動したアニメーションを設定する

この記事は Xamarin Advent Calendar 2019 の 1日目の記事です。 Triggerの機能にいつのまにか EnterActions / ExitActions なるものが実装されていたので試してみました。 docs.microsoft.com 今までの Trigger でできたこと Triggerにも種類がありますが、…

「復習帳」 有料版の登録方法について

version 1.2.0 から 有料版 をご用意しましたので、その利用方法をご紹介します。 復習帳とは 「復習帳」は学習内容を忘れないように効率の良い復習をサポートするアプリです。 復習帳 のその他の記事はこちらです。 kamusoft.hatenablog.jp 復習帳のマニュ…

「復習帳」 version 1.2.0 新機能のご紹介

1年以上更新してなくて大変申し訳ありませんでしが、この度 version 1.2.0 をリリースしましたので、その変更点をご紹介します。 復習帳とは 「復習帳」は学習内容を忘れないように効率の良い復習をサポートするアプリです。 復習帳 のその他の記事はこちら…

Xamarin.Forms で AiForms.Dialogs という、いろいろなカスタムダイアログを表示できるプラグインを公開しました。

Xamarin.Forms でのダイアログといえば、ACR User Dialogs が有名で、私も業務で利用していました。個人開発ではこれではなく、DependencyService を利用したプラットフォーム実装でローディング表示などを行なっていたのですが、Android では ProgressDialo…

Xamarin.Forms で ListView のスクロールに合わせて NavigationBar を隠したり出したりするやつを実装する

この記事は Xamarin Advent Calendar 2018 の1日目の記事です。 ListView のスクロールに合わせて NavigationBar が隠れたり出てきたりする、今ではいろんなアプリで実装されてるあれです。最近では twitter 公式にも実装されました。 Xamarin.Forms にはそ…

AiForms.Effects for Xamarin.Forms 1.4.0 新機能 Floating / Feedback のご紹介

久しぶりに更新しました。 きっかけは個人アプリ開発中になんかタップの反応遅いなと思って await TapAnimation(0.3, _alpha, 0); AiForms.Effects/AddCommandPlatformEffect.cs at 31dc08ca78b4bc71a04b0281407b1257ae6fc1e5 · muak/AiForms.Effects · GitH…

Xamarin Docs 翻訳ブランチまとめ

Xamarin 日本語ドキュメント リポジトリ github.com の翻訳を修正した作業ブランチをまとめてみます。 なぜこんなことをするのかというと、このリポジトリは、PRで取り込まれた直後は良いんですが 本家が修正されると、また機械翻訳で上書きされてしまう問題…

CollectionView という Xamarin.Forms 向けの 縦以外のレイアウトに対応した ListView を公開しました。

以前 WrapLayout というカスタムレイアウトを含む AiForms.Layouts というライブラリを作成しました。これは、要素を水平方向に配置していき端まできたら折り返すというだけのものでした。そして現在は、FlexLayoutの登場によりその役割をほぼ終えています。…

Xamarin.Forms (Android) のListViewでFFImageLoadingとNativeCellを使ってout of memoryを回避しつつ高速化するサンプル(iOSはViewCellのまま使用する)

Xamarin.Forms の ListView は、Android で使う場合(特に画像を扱う場合)にパフォーマンスが悪いという問題があります。これは Fast Renderer を有効にしても変わりません。 普通にやってたら描画が遅くてメモリリークで落ちがちなので、何らかの対策が必…

App Store の審査で CallKit の使用が検出されたとしてリジェクトされた場合の対処 ( Xamarin.Forms / Xamarin.iOS )

復習帳 1.1.6 iOS版 のアップデートの際に審査で「メタデータでの却下」としてリジェクトされました。 内容は以下になります。 Guideline 5.0 - Legal Recently, the Chinese Ministry of Industry and Information Technology (MIIT) requested that CallKi…

「復習帳」version 1.1.6 バックアップ機能 のご紹介

Version 1.1.6 より バックアップの保存と復元機能が実装されました。 今回はバックアップの保存と復元方法をご紹介します。 復習帳とは バックアップ機能 概要 バックアップの保存方法 (iPhone) バックアップの保存方法 (Android) バックアップからの復…

「 復習帳 」version 1.1.5 「自己評価モード」機能のご紹介

この度 復習帳 ver.1.1.5を公開しました。 主な変更点は 自己評価によるスケジュール機能の追加 スケジュール日数の最大値を120から254に変更 スケジュール日数に関しては365日にしてくれという要望があったんですが 数百日も使わねぇだろうからbyte型で十分…

Prism.Forms 6.3.0 から 7.0.0 へのマイグレーションに関するメモ

Prism.Forms 7.0.0 のリリースから結構経ってしまいましたが、ようやく更新に手がつけられたので、6.3.0からの更新方法などのメモを残しておきます。 DIコンテナの抽象化 Navigation用のぺージクラス登録 その他のクラスの登録 IPlatformInitializer カスタ…

Xamarin.Forms Guides「iOS Platform-Specifics」の日本語訳(の練習)

https://developer.xamarin.com/guides/xamarin-forms/platform-features/platform-specifics/consuming/ios/ 2018年2月5日時点の翻訳です。 注意事項 iOS Platform-Specifics Applying Blur Displaying Large Titles Enabling the Safe Area Layout Guide M…

App Center で初めてXamarin.Formsのプロジェクトをビルドして気になったところ

先日App Center祭りに参加して、その有用性を実感してて、是非活用したいなと思いつつ後回しになっていましたが、最近ようやく復習帳のプロジェクトをApp Centerでビルドしてみました。 だいたいうまくいったんですが、いくつか気になるところがあったのでメ…

Xamarin.Forms Guides「ListView Performance」の日本語訳(の練習)

ListView Performance - Xamarin 2018年1月16日時点の翻訳です。 注意事項 基本的に直訳で意訳はあまりしません。 あくまで英語のReadingの練習であり、嘘率は高いです。

Xamarinにおける NativeCell / NativeLayout に関するまとめ記事をQiitaに投稿しました。

AdventCalendar 2017 Xamarin の5日目の記事としてNativeCellのまとめ/NativeLayoutのまとめを書きました。 Xamarin その1 Advent Calendar 2017 - Qiita [初心者さん・学生さん大歓迎!] Xamarin その1 Advent Calendar 2017 - Qiita 長くなったので自動的…

Xamarin.FormsでSettingsViewという設定に特化したTableViewを作ってnuget公開しました。

Xamarin.FormsのTableViewは便利ですが、組み込みセルが全然足りなくて結局ViewCell祭りになってしまう残念なコントロールなので、オレオレライブラリにTableViewを拡張して、組み込みセルを増やして対応していました。 今回それを独立させてnugetパッケージ…

Xamarin.Forms 2.4.0でEffectsの挙動が変わったような気がする点(Androidのみ)

2.4.0がStableになってAiForms.Effectsの対応作業をしていて気づいた点をいくつかご紹介したいと思います。 変わったような気がする点 iOSに関してはEffectsに関して変わったところには遭遇しませんでした。 Android PlatformEffectでContainerやControlの中…

Xamarin.Formsに独自のImageSourceを追加して標準のImageコントロールでSvg画像を表示させる(2.3.5〜)

ある部品をSVG対応させる場合は基本的にはNgraphicsなどの外部ライブラリを追加すると思います。 ただそうすると、SVGを使わない人にまで余分なdllを付加させてしまうことになります。 なんとかSvg対応だけを独立したパッケージにしてプラグインっぽい対応に…

Xamarin.Formsでほぼ最小構成のListViewを作ってみた(2.3.5.256-pre6を使用)

iOSのUITableView / AndroidのListViewの基本的な動きを覚えたくてXamarin.Formsでの最小構成でのCustomRendererを作ってみました。 諸事情によりpreを使うことになりましたが、とりあえず無事動作しました。 これをベースとすれば、いらんことをしないオレ…

AiForms.LayoutsにDataTemplateに対応したStackLayoutを追加しました。

AiForms.LayoutsというXamarin.FormsのCustomLayoutをパッケージしているものがあるのですが、そこに今更すぎますが、RepeatableStackというDataTemplateに対応したStackLayoutを追加しました。 個人でも仕事でも何かと使う機会が多かったので、わざわざ作る…

Xamarin.FormsでTimePickerやDataPickerを付加したりEditorにPlaceholderを表示したりSwitch・Sliderなんかの色を無理やり変更したりするEffect

とりとめのないタイトルですみません。 Effect作成に飽きてきたので、残っている手持ちのEffectをまとめて追加しました。

Xamarin.Formsで任意のViewにBorderを追加するEffect

かなり今更なEffectですが、あると便利なのでAiForms.Effectsに追加しました。