コントローラークラスに追加のフィールドを作成して、コンストラクターから渡されたデータを保存し、それらをviewDidLoadで使用したくありません。
しかし、それはそれが行われることを意味する方法です。
または、MVVM パターンを使用する場合は、viewcontroller で作成するフィールド/プロパティを減らすことができます。
public class UserViewModel {
public string Name { get; set;}
public string Title { get; set;}
}
public class UserViewController : UIViewController
{
UserViewModel viewModel;
public UserViewController (UserViewModel viewModel) : base (...)
{
this.viewModel = viewModel;
}
public override void ViewDidLoad ()
{
userName.Text = viewModel.Name;
userTitle.Text = viewModel.Title;
}
}
これは、プラットフォーム (android、WP など) 間で多くのコードを再利用し、懸念事項を明確に分離するようなパターンです。これは (非常に) わずかな余分なコードですが、すべてのバイトの価値があります。