ディーバ Blog

大阪発 C#の会社、株式会社ディーバの Blog です。

C#

「Xamarinネイティブによるモバイルアプリ開発 C#によるAndroid/iOS UI 制御の基礎」アップデート情報・正誤表・エラッタ

最終更新日: 2017/12/12 株式会社ディーバ 代表取締役 青柳臣一が執筆した、2017年9月15日発売 Xamarinネイティブによるモバイルアプリ開発 CによるAndroid/iOS UI制御の基礎 (翔泳社)のアップデート情報・正誤表を勝手に記します(適宜この記事を更新しま…

CodeZineにインタビュー記事が掲載されました

青柳です。 書籍「Xamarinネイティブによるモバイルアプリ開発 CによるAndroid/iOS UI制御の基礎」に関連してCodeZineにインタビュー記事が掲載されました。 codezine.jp メールやチャットではなくインタビュワーさんと面と向かって話をしました。時間にした…

iOS 11 対応でアプリを修正したところ

開発している iOS 10 アプリをそのまま iOS 11.0 で動かすと不具合があったので修正したところです。 ※ Xamarin.iOS + MvvmCross およびその他ライブラリを使っている環境です。 Document picker のデザインが異なる iOS 11 では Document picker の navigat…

「Xamarinネイティブによるモバイルアプリ開発 C#によるAndroid/iOS UI 制御の基礎」が出版されました

青柳です。 先週、9月15日に私が執筆した Xamarinネイティブによるモバイルアプリ開発 CによるAndroid/iOS UI制御の基礎 が出版されました。 CodeZineに紹介記事があります。 「C#でアプリ開発できるXamarinを体験!『Xamarinネイティブによるモバイルアプリ…

Xamarin ネイティブによるモバイルアプリ開発 C# による Android/iOS UI 制御の基礎

株式会社ディーバ 代表取締役 青柳臣一が、Xamarinネイティブによるモバイルアプリ開発 CによるAndroid/iOS UI制御の基礎 (翔泳社)を執筆しました。 2017年9月15日発売です。 AndroidもiOSも。 C#を使ったクロスプラットフォーム開発に挑戦! これまで別々…

Xamarin.Android SfDataGrid でセルの背景色を変える

Syncfusion SfDataGrid でセルの背景色を変える方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 セルの背景色の変更は GridCell クラスを継承したクラスを GridColumn クラス UserCellType プロパティに指定します。背景色…

Xamarin.iOS SfDataGrid でセルの背景色を変える

Syncfusion SfDataGrid でセルの背景色を変える方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 セルの背景色の変更は GridCell クラスを継承したクラスを GridColumn クラス UserCellType プロパティに指定します。背景色…

Xamarin.iOS SfDataGrid 編集時のキーボードに完了ボタンを追加する

Syncfusion SfDataGrid で編集する際に キーボードの種類(KeyboardType)を変更 した上で、完了ボタン(Done ボタン)を追加して、編集の確定とキーボードを閉じる方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 Editing …

Xamarin.Android SfDataGrid で編集時にキーボードの種類を変える

Syncfusion SfDataGrid で編集する際にキーボードの種類(InputType)を変更する方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 Editing 機能で Excel のセルのように編集できます。キーボードの種類を指定するには、カス…

Xamarin.iOS SfDataGrid で編集時にキーボードの種類を変える

Syncfusion SfDataGrid で編集する際にキーボードの種類(KeyboardType)を変更する方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 Editing 機能で Excel のセルのように編集できます。キーボードの種類を指定するには、カ…

Xamarin.Android SfDataGrid 改行でセルの編集を確定する

Syncfusion SfDataGrid のセル編集をキーボードの改行(Enter/Return キー)で編集を確定する方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 Editing 機能で Excel のセルのように編集できます。改行をハンドリングするに…

Xamarin.iOS SfDataGrid 改行でセルの編集を確定する

Syncfusion SfDataGrid のセル編集をキーボードの改行(Enter/Return キー)で編集を確定する方法です。 ※ この記事の投稿時点の SfDataGrid のバージョンは v15.2.0.46 です。 Editing 機能で Excel のセルのように編集できます。改行をハンドリングするに…

5/23 MvvmCross 5.0 がリリース

クロスプラットフォーム MVVM フレームワーク「MvvmCross」がメジャーアップデートして MvvmCross 5.0 がリリースされています。MvvmCross 5.0 は、Xamarin.iOS, Xamarin.Android, Xamarin.Mac, Xamarin.Forms, Universal Windows Platform (UWP), Windows P…

Xamarin.iOS で psd ファイルを表示

Visual Studio (Xamarin.iOS)の iOS アプリで Photoshop ファイル(.psd ファイル)を、できるだけお手軽に表示する方法です。 UIWebView iOS 10 から UIWevView で psd ファイルが表示できるようになっています! JPEG 画像と同じように表示するだけで ps…

MvvmCross + Xamarin.iOS で NavigationBar 付きの modal 画面を使う

MvvmCross で画面遷移は ViewModel 側で ShowViewModel<SecondViewModel>() のように ShowViewModel メソッドを使います。 github.com このとき iOS アプリで modal 画面として表示する方法です。 IMvxModalIosView の実装 View 側のクラスは IMvxModalIosView を実装します。</secondviewmodel>…

Xamarin.Android で interface を実装するとき Handle と Dispose の実装

Xamarin.Android で Listener などの interface を実装しようとしたとき、Handle プロパティと Dispose メソッドを実装する必要があります。 class SampleListener : AppBarLayout.IOnOffsetChangedListener { public IntPtr Handle => throw new NotImpleme…

iTextSharp で外字を PDF に出力

少しだけ iTextSharp と日本語外字を扱ったのでメモ。 DirectContent を使う場合 外字ファイルを指定した BaseFont オブジェクトを生成します。DirectContent.ShowTextAligned メソッドを使うと自由な位置にテキストを出力できますが、指定できるフォントが…

「Visual Studio 2017 先取り特集」連載の「Visual Studio for Mac」紹介記事が公開されています

2016/2/15、CodeZine で 次期バージョン「Visual Studio 2017(Visual Studio “15")」先取り特集 第3回 の『使う言語はC#のみ! Macアプリケーションはもちろん、Webアプリやスマホアプリも開発可能な「Visual Studio for Mac」登場』が公開されています。 …

C# で日本の祝日を取得

C#

C# で日本の祝日を扱います。 取得しない もっとも簡単で処理的にも速いのは、あらかじめ登録しておくことですよね。常にメンテナンスするような Web サービスであれば、これが一番いいかも。実際、大手グループウェアで数年先のカレンダーを見ると祝日が未…

C# で国名の一覧を取得・表示する

C#

CultureInfo, RegionInfo を使って国名(台湾・香港なども含む)の一覧を取得します。アプリで国籍の選択などに使えるかなと。 GetCultures でカルチャを取得し、LCID(ロケールID)プロパティを使って RegionInfo を生成します。Name プロパティが2文字のオ…

「Xamarin で作る Android/iOS アプリ」連載

2016/09/08 から、株式会社ディーバ 代表取締役 青柳臣一による連載「Xamarin で作る Android/iOS アプリ」が始まっています。 codezine.jp codezine.jp

Xamarin.iOS 透明な NavigationBar と Toolbar

Xamarin に限らず iOS の一般的な話と同じですが、Xamarin.iOS で NavigationBar と Toolbar の背景を透明にします。 背景を透明にするだけでは、NavigationBar の下、Toolbar の上部分に線が表示されるので、それも非表示にします。 public override void V…

Xamarin.iOS でフォルダー選択の UI (TreeView) を作る

iOS には、階層構造を表現・選択する UI コントロールが提供されていません。 検索すると、Xamarin iOS – Create custom TreeView control for iPad / iPhone « Milen's Blog で実装しているコードがありましたが、きちんと動作していない感じだったので、作…

UICollectionViewController の Cell サイズを実行時に変更

Xamarin.iOS のUICollectionViewController を継承した ViewController 使用時、コードで Cell サイズを動的に変更する方法です。 Layout プロパティの ItemSize を設定します。 public partial class SampleViewController : UICollectionViewController { …

Excel でたこ焼きを描く with C# + ClosedXML

概要 C# + ClosedXML で、画像を読み込み Excel のセル背景を塗ります。 ClosedXML は、Microsoft Open XML Format SDK を Excel 向けに使いやすくしたライブラリで、NuGet からインストールできます。 この画像を読み込みます。 大阪の会社ということで勝手…

わんくま同盟 名古屋勉強会 #38 参加と、いらすとやのラズパイ素材 | Xamarin、Windows 10 IoT など

2016/5/21 開催の わんくま同盟 名古屋勉強会 #38 に、ぶらりと参加してきました。参加人数は、20名程度。場所は、名古屋市港生涯学習センター。 C# + Windows10 IoT Core で学ぶ IoT by くぅさん スライドマスタN38_IoT—Kume Fumiya IoT はどんなものから…

MvvmCross + Xamarin.Android でスプラッシュスクリーンを表示

MvvmCross (現在 v4.14)をセットアップした Xamarin.Android プロジェクトは、はじめからスプラッシュスクリーンが実装されています。 ただ、セットアップ時に配置されている splash.png を差し替えただけでは、Android 画面比率に合わせて画像がゆがんで表…

C# は「1クラス500行・1メソッド50行」なのか

C#

経緯と結論 以下のツイートを見かけました。 C# のコーディングガイドラインとして「1クラス500行・1メソッド50行」を見かけたというツイートと、その出所を知りたいというツイート。既に、ツイート元の方は、間違いであった とツイートしています。 確かC# …

Xamarin.Android の Google Maps でカスタムした情報ウィンドウの表示

Xamarin.Android の Google Maps で、独自の情報ウィンドウ (info Window) を表示します。 Google Maps の表示 はこちらから。 カスタムした情報ウィンドウの表示 View の定義 axml ファイルで定義した View を情報ウィンドウとして表示します。

Xamarin.Android で Google Maps の表示とマーカー・情報ウィンドウの表示

地図の表示 Xamarin.Android で Google Maps の表示は、Xamarin.Androidで地図を表示するには?(Google Maps使用) - Build Insider などを参考にしてください。 地図の操作 地図を操作するには、IOnMapReadyCallback を実装し、GoogleMap オブジェクトを取…