1つのViewModelをインスタンス化して、すべてのアクティビティで使用しようとしています。アクティビティでViewModelをインスタンス化できません。
public class LaunchActivity extends Activity {
private Controller control;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_launch);
control = ViewModelProviders.of(this).get(Controller.class);
}
}
が、私はそれがof(this)
を解決できないというcontrol = ViewModelProviders.of(this) <--
でエラーが発生しましたが、実装のViewModelのAndroid開発者の例hereに基づきます。 ViewModelを拡張するクラスはアクティビティでインスタンス化できるはずです、そうですか?
私がやっていることが間違っている場合、私は自分のアクティビティ用にViewModelオブジェクトをインスタンス化する必要がありますか? ViewModelProviders.of()
はフラグメントでのみ機能するので、フラグメント数を持つn
個のアクティビティを作成する必要がありますか?
AppCompatActivityを使用してみてください – Kuffs