jam*_*men 14 android android-intent
大家好我正在尝试2个类之间的android传递意图,我已经意识到有两种传递意图的方法,
第一个是在这里使用getIntent方法:
Bundle extras = getIntent().getExtras();
mRowId = (extras != null) ? extras.getLong(DrugsDbAdapter.KEY_ROWID) : null;
Run Code Online (Sandbox Code Playgroud)
第二种方法是访问savedInstanceState:
mRowId = (savedInstanceState != null) savedInstanceState.getLong(DrugsDbAdapter.KEY_ROWID) : null;
Run Code Online (Sandbox Code Playgroud)
在这两种方法中,我都试图访问RowId,然后我可以使用它来获取fetchData.这两种方法有什么区别?哪一个更好 ?
ern*_*azm 12
第一种情况为您提供了启动此活动的意图的额外内容,而第二种情况onCreate则在第二次和更多次调用时使用,例如,在设备旋转时.应该填充该捆绑包onSaveInstanceState.
nic*_*ild 11
getIntent()用于告诉你从哪个Intent开始Activity.它可以在任何地方访问Activity.它有一个Bundle,但它也有其他元数据.
onSaveInstanceState(Bundle)通过你Bundle,在你的应用程序中保存实例变量,直到下一次开始.这Bundle只是进来onCreate()和onRestoreInstanceState(),并没有其他数据.
| 归档时间: |
|
| 查看次数: |
9191 次 |
| 最近记录: |