当浏览我的父活动需要一些额外的内容时。但我不确定如何提供它。AppCompatActivity的文档指出:
如果有任何活动 * 沿着父链需要额外的 Intent 参数,Activity 子类 * 应该覆盖方法 {@link #onPrepareSupportNavigateUpTaskStack(android.support.v4.app.TaskStackBuilder)} * 提供这些参数。
这就是我目前所拥有的。
安卓清单.xml
<activity
android:name=".user.offers.detail.OfferDetailActivity"
android:theme="@style/AppTheme.NoActionBar"
android:parentActivityName=".user.offers.master.OffersMasterActivity"
android:screenOrientation="portrait">
</activity>
关于如何覆盖onPrepareSupportNavigateUp
的信息并不多,所以这是我最好的猜测(在"子"活动中):
override fun onPrepareSupportNavigateUpTaskStack(builder: TaskStackBuilder) {
builder.editIntentAt(builder.intentCount - 1)?.apply {
putExtra(OffersMasterActivity.CAT_KEY_EXTRA, catKey)
putExtra(OffersMasterActivity.CAT_NAME_EXTRA, catName)
putExtra(OffersMasterActivity.CAT_PICPATH_EXTRA, picPath)
}
}
但是从不调用该方法来确定我的实现是否有效。
任何帮助将不胜感激!
要调用onPrepareSupportNavigateUp
,应首先覆盖supportShouldUpRecreateTask
返回true
。