最終更新日: 2017/12/12
株式会社ディーバ 代表取締役 青柳臣一が執筆した、2017年9月15日発売 Xamarinネイティブによるモバイルアプリ開発 CによるAndroid/iOS UI制御の基礎 (翔泳社)のアップデート情報・正誤表を勝手に記します(適宜この記事を更新します)。
購入者が実際に試した「 テスターが #Xamarin でキッチンタイマーを作ってみた! - Togetter」も参考になります(一部参考にしてここでも記載します)
Chapter 3: Visual Studio で iOS キッチンタイマーを作ろう
リスト 3.24 (p.156) ShowRemainingTime メソッド
誤
private void ShowRemainingTime() { RemainingTimeLabel.Text = string.Format("{0:f0}:{1:d2}", _remainingTime.TotalMinutes, _remainingTime.Seconds); }
正(修正例)
private void ShowRemainingTime() { RemainingTimeLabel.Text = string.Format("{0:f0}:{1:d2}", Math.Floor(_remainingTime.TotalMinutes), _remainingTime.Seconds); }
Chapter 4: Xamarin でアプリを実装する
ポータブル クラス ライブラリ (PCL) p.182
旧 | 新 |
---|---|
ポータブル クラス ライブラリ | クラス ライブラリ(レガシ ポータブル) |
Visual Studio 2017 Ver. 15.3 頃から ポータブル クラス ライブラリ は、レガシ ポータブルと表記されています。
Chapter 5: MVVMCross について学ぼう
誤 | 正 |
---|---|
MVVMCross | MvvmCross |
MVVMCross、MVVM Cross でもなく MvvmCross が公式表記です。ただし、最新のロゴは MVVMCROSS と大文字表記です。
Chapter 8: MVVMCross を使いこなそう
ビューモデルのライフサイクル (p.330, 331)
Start
メソッドは MvvmCross 3.x/4.x 系のライフライクル で使われるメソッドのため非推奨です。
MvvmCross 5.6 の ライフライクル は次のように変更されています。
メソッド名 |
---|
コンストラクタ― |
void Prepare(TParameterModel parameter) |
async Task Initialize() |
void ViewCreated() |
void ViewAppearing() |
void ViewAppeared() |
void ViewDisappearing() |
void ViewDisappeared() |
void ViewDestroy(bool viewFinishing) |
Tips: 注意: Initialize メソッドが呼ばれないケース (p.333)
「今後の MVVMCross では修正されるかもしれませんが」とありますが、Navigation Service を使う場合 Core プロジェクトの App class (App.cs) の下記メソッドを変更します。
誤
RegisterAppStart<ViewModels.MainViewModel>();
正
RegisterNavigationServiceAppStart<ViewModels.MainViewModel>();