fra*_*ran 16 android android-animation android-viewpager android-transitions
我需要有关活动之间转换的帮助:
我有两个活动A和B,两个都有一个具有相同图像列表的ViewPager.每个页面都有与一个ImageView的transitionName
等于image_x其中X是页面的索引.
A启动活动B调用ActivityOptionsCompat.makeSceneTransitionAnimation
,输入转换完全正常.
问题如下:当我关闭活动B时,退出转换不会在B的相同位置初始化活动A的视图寻呼机.
当用户关闭B时,后者在结果中设置当前页面位置.在onActivityResult
活动A中,我调用了setCurrentItem
,并且行为显示在gif中.
有没有办法在退出转换开始之前更新活动A?
如果您使用setCurrentItem
in onActivityReenter
而不是in onActivityResult
(在您的中Activity
A
),您应该能够实现这一目标.
请相信你:
Activity
B
,设置结果(使用setResult(int resultCode)
或setResult(int resultCode, Intent data)
)supportFinishAfterTransition()
(或finishAfterTransition()
)代替常规finish()
来"关闭" Activity
B
.总结一下:
在Activity
B
:
public void close(){
Intent data = new Intent();
data.putExtra(KEY_CURRENT_ITEM, mFullscreenViewPager.getCurrentItem());
setResult(RESULT_CODE, data);
supportFinishAfterTransition();
}
Run Code Online (Sandbox Code Playgroud)
在Activity
A
:
@Override
public void onActivityReenter(int resultCode, Intent data) {
super.onActivityReenter(resultCode, data);
if (data.hasExtra(KEY_CURRENT_ITEM)){
mViewPager.setCurrentItem(data.getIntExtra(KEY_CURRENT_ITEM, 0), false);
}
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
846 次 |
最近记录: |