shuhelohelo’s blog

Xamarin.Forms多めです.

Xamarin.Formsでフォントを追加,使用する

Xamarin.Formsでフォントを変更する手順は以下の公式ドキュメントのとおりです. docs.microsoft.com フォントを入手する 使いたいフォントのデータを取得します. 公式ドキュメントでは例としてGoogle Fontsを挙げています. fonts.google.com こちらから使い…

Xamarin.Formsの現時点でのExperimentalな機能リスト

Xamarin.Forms 4.6 pre1の時点でExperimentalな機能は以下のリンクで確認できます. docs.microsoft.com Shell_UWP_Experimental IndicatorView_Experimental SwipeView_Experimental CarouselView_Experimental MediaElement_Experimental StateTriggers_Exp…

Xamarin.Formsの名前付きフォントサイズと各プラットフォームのフォントサイズの対応関係

docs.microsoft.com メンバー iOS Android UWP Default 16 14 14 Micro 11 10 15.667 Small 13 14 18.667 Medium 16 17 22.667 Large 20 22 32 Body 17 16 14 Header 17 96 46 Title 28 24 24 Subtitle 22 16 20 Caption 12 12 12

Xamarin.Formsで上下スクロールにあわせてナビゲーションバーを表示・非表示

ShellやNavigationのナビゲーションバーを直接動かすことはできないので,Frameコントロールでナビゲーションバーにあたるものを配置して,ということです. さて,モバイルアプリは上下にスクロールして使うUIが多いです. 上部にナビゲーションバーがあって,そ…

Xamarin.FormsでNavigationPageのナビゲーションバーを非表示にする

各ページのContentPage要素の属性にNavigationPage.HasNavigationBar="False"を追加する.

Xamarin.Formsでプレビュー(Experimentalな)機能を使うためのフラグ指定

追記(2020/04/12 各プロジェクトにフラグをセットする必要はなく,App.xaml.csのコンストラクタに以下のように記述すればOkになりました. public App() { InitializeComponent(); Xamarin.Forms.Device.SetFlags(new List<string>() { "StateTriggers_Experimental", </string>…

はてなブログの画像サイズを一括で指定する

以下の記事を参考にして,画像サイズを設定できました. www.genelink.work 以下のCSSをはてなブログのデザインの設定に追加するだけでOKです. ありがとうございました. /* 画像のセンタリング*/ .hatena-fotolife, .http-image { display: block; margin: 0px…

Xamarin.FormsのShellのFlyoutItem,Tabについてメモ

Shellを使う準備については以下の記事を参照. shuhelohelo.hatenablog.com 上の記事とかぶる内容もある. 環境 Xamarin.Forms 4.5 アップデートによって使える機能,設定が異なるので注意. 例えばShellのPresentationMode属性はXamarin.Forms 4.3にはなかった…

Xamarin.Formsの画面遷移のアニメーションの種類

Xamrin.Formsの画面遷移にはページ遷移とモーダルページの表示がある. ページ遷移 ページ遷移は以下のように記述する. private async void Button_Clicked_1(object sender, EventArgs e) { await Navigation.PushAsync(new SecondPage()); } ページ遷移のア…

Xamarin.Formsでオーバーレイしてダイアログ(というかページ)を表示させるにはどうしたらいいの?

例1:ライブラリ無しでピュアなXamarin.Formsで実現する 以下の例ではライブラリを使用せずに,PCLで,XamlとC#で,ドノーマルのXamarin.Formsでカスタムダイアログ,カスタムメッセージボックスを表示させている. winstongubantes.blogspot.com 手法としては,ダ…

Xamarin.FormsのVisualStateManagerについてのメモ

VisualStateManager docs.microsoft.com Visual State Manager(VSM)はコントロールの見た目を予め数種類定義しておき,それを切り替えることができるようにする機能です. VSMにはデフォルトの定義があり,それはCommonStatesというグループ名で定義されている.…

Xamarin.FormsでSyncfusionのコントロールを使う

Syncfusionはアプリケーションのための様々なコンポーネントを提供している企業です. .NETだけでなくJavaScriptやflutter,Vue,Reactなど多くのプラットフォームのコントロールを取り揃えています. おしゃれなコントロールを作ることはデザイン的にも実装技術…

CollectionViewならVisual State Managerで選択時の背景色を変えられる

docs.microsoft.com CollectionViewであればDataTemplate直下のコンテナ要素の背景色をVisual State Managerで切り替えることで,アイテム選択時の背景色を変更できる. これは素晴らしい!プラットフォームごとに実装する必要がない.とても簡単. Styleのターゲ…

Visual State Managerを使ったサンプル

https://github.com/CrossGeeks/VisualStateManagerSample 1ヶ月の日付が横方向にリスト表示されていて,日付をクリックすると文字サイズが大きくなる動作が面白い. ListViewにアイテムを追加しているのではなく,StackLayoutにアイテムを追加しているのは,ア…

Asp.net core 3.1でデバッグ中のViewの変更を反映させる

環境 Windows 10 1809 .NET Core 3.1 ASP.NET Core 3.1でフロントはRazorページを使用 デバッグ中の変更を反映させるには Asp.net core 2.1のときはデバッグ中にViewに変更を加えて保存し、ブラウザ側でリロードしたら変更が反映されていました。 Asp.net co…

Windowsでmp4をgifに変換する.コマンドラインで.

ブログでアプリケーションの動作を説明するとき,動画がわかりやすいです. はてなブログを使っていますが,mp4はアップロードできないようです. そこでGIFの出番ですが,録画したmp4を別のアプリケーションを起動して変換するのは手間に感じます. コマンドライ…

Xamarin.Formsでボタンを領域の縁に重ねる

shuhelohelo.hatenablog.com 上の記事のようにXamarin.Forms v4.3とv4.4以上ではFrameやGridといった領域の中のコントロールは,その領域の外側にははみ出さないように描画される,ようだ. とはいえ,コントロールの位置をずらして縁に重ねたりするのはおしゃれ…

Xamarin.Forms v4.5.0.282-pre4のUIの挙動メモ

追記 どちらが正しい表示なのかわからなくなった. v4.4以降の挙動のほうが正しい気がしてきた. 領域からはみ出してもらったら困ることの方が多そうだし,自然だな. 領域の縁に重ねたい場合は,一つ外の領域に出して,位置を調整すればいい. shuhelohelo.hatenab…

Xamarin.FormsのBindableLayoutについて

Layoutに表示する項目(アイテム)のUIを統一したい場合に使います. Using Bindable Layouts with Xamarin.Forms Controls | Syncfusion Blogs ListViewでListItemに対してUIのテンプレートを適用して,全てのItemを同じ見た目にする,というのはよくやります. L…

Xamarin.Formsでサンプルをデバッグ実行時に「The project AppDuolingoClone.Android needs to be deployed before it can be started」と言われたときの対処

stackoverflow.com サンプルをCloneしてAndroidでデバッグ実行したときに「The project AppDuolingoClone.Android needs to be deployed before it can be started」と言われることがあります. 実機やエミュレータにデプロイすれば動作させることができますが,…

既存のXamarin.Formsプロジェクトに新規Androidプロジェクトを追加する

以下の記事のとおりにAndroidプロジェクトを追加してみた. www.c-sharpcorner.com 環境 Visual Studio 2019 16.5.4 Windows 10 1909 手順 基本的な方針は,既存のプロジェクトとは別にXamarin.Formsプロジェクトを作成(Androidを含むもの)し,そこからAndroid…

Xamarin.FormsのCollectionViewの用途について考えてみた

shuhelohelo.hatenablog.com 上の記事で書いたようにXamarin.FormsのCollectionViewはListViewよりも機能が豊富かつ柔軟な表現ができます. アイテムを一つ一つ強制的に止めるSnapの機能がありますが,これを使えば漫画アプリビューワのように1ページずつめく…

Xamarin.FormsのCollectionViewについてメモ

環境 Xamarin.Forms 4.4 preview2 遅延ローディングが簡単にできる! などなど。 こりゃすごい. https://devblogs.microsoft.com/xamarin/5-quick-tips-for-collectionview/ CollectionView, CarouselViewなどXamarin.FormsのUIコントロールの便利な機能を紹…

Xamarin.Formsでコントロールのサイズを縦横比で指定する

コントロールのサイズを縦,横それぞれにピクセルの値を指定するのではなく,縦を決めれば自動的に横が縦の2分の1のサイズになるようにしたい,と思いました.例えばです. 名刺と同じ縦横比のカード風コントロールを作成するとします. 日本の名刺の一般的なサイ…

.gitignoreを編集,もしくは途中で追加してそれを反映させる

メモ 忘れてしまうのでメモ. 以下の記事を参考にしました.ありがとうございます. qiita.com devconnected.com .gitignoreファイルに除外対象を追加,または.gitignoreファイルをすでにgit管理されているプロジェクトに追加したときに,.gitignoreの設定内容を…

SignalR Core復習

忘れてしまうのでもう一度基本的な使い方をメモ 参考 docs.microsoft.com 環境 Windows 10 1809 .NET Core 3.1 ASP.NET Core 3.1 Serviceの追加 Startup.csを開いてConfigureServiceメソッドに以下のようにSignalRを登録します。 public void ConfigureServi…

Prismを使ったXamarin.FormsプロジェクトでSqliteを使う

SqliteはDBをファイルとして扱うので,そのdbファイルを保存する必要があるのですが,この保存先はプラットフォームごとに異なります. プラットフォームごとの処理を呼び分けたいときは,以下の記事のとおり,IPlatformInitializerクラスを使う. blog.okazuki.jp…

Xamarin.FormsでEntryコントロールのカーソル関連の色を変える方法

カスタムレンダラーから変更する方法がよくわからなかった. stackoverflow.com ↑の記事によると,カスタムレンダラに追加すれば良いとのこと. IntPtr IntPtrtextViewClass = JNIEnv.FindClass(typeof(TextView)); IntPtr mCursorDrawableResProperty = JNIEnv…

Entryの下線部の色を変える

Entryコントロールのカーソルの色を変えたいのだけれど,その途中で見つけたEntryコントロールの下線部の色を変更する方法. kotaeta.com カスタムレンダラーで変更する.Custom Renerer Android. [assembly: ExportRenderer(typeof(Entry), typeof(MyEntryRend…

Visual Studio 2019のインテリセンスの挙動が気に入らないとき

blog.shibayan.jp インテリセンス(Intellisense)が候補を提示したときにEnterを押すと候補が確定されるのが通常だが,確定されずに「改行」されてしまう状態になった場合,上記記事のとおりで解決できる. 助かった. Visual Studioの設定で「完了モードの切り替え」…