我正在尝试新的Android L API特定转换。我拥有的最佳体验" Fade"但是" Slide.RIGHT"表现得非常奇怪......当屏幕飞入其中时,首先在屏幕底部显示屏幕标题,然后标题跳转到屏幕顶部,屏幕的其余部分出现......
我没有使用自定义转换,只是基本转换。我用于测试的屏幕只有几个TextView,EditText和按钮。但即使我将Google ActivitySceneTransitionBasicSample从自定义过渡更改为基本的Slide.RIGHT,它也会表现出同样奇怪的方式......
有人设法实现了漂亮的幻灯片转换吗?在我的情况下,我需要完全滑动不同的屏幕。没有我可以分享的元素。
我的代码是:
第一项活动:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
Slide transitionEnter = new Slide();
transitionEnter.setSlideEdge(Gravity.RIGHT);
transitionEnter.setDuration(1000);
Window currentW = getWindow();
currentW.setEnterTransition(transitionEnter);
currentW.setExitTransition(transitionEnter);
getWindow().setAllowEnterTransitionOverlap(true);
getWindow().setAllowExitTransitionOverlap(true);
setContentView(R.layout.slide_test_view);
}
public void buttonLAction(View view){
Utils.startActivity(this, SecondSlideTestActivity.class);
}
第二项活动:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);
Slide transitionEnter = new Slide();
transitionEnter.setSlideEdge(Gravity.RIGHT);
transitionEnter.setDuration(1000);
Window currentW = getWindow();
currentW.setEnterTransition(transitionEnter);
currentW.setExitTransition(transitionEnter);
getWindow().setAllowEnterTransitionOverlap(true);
getWindow().setAllowExitTransitionOverlap(true);
setContentView(R.layout.second_slide_test_view);
}
答案 0 :(得分:3)
只是一个小小的建议,不会让它变得完美,但在我看来看起来更好:
使用不同的边进入和退出转换,例如:
transitionEnter.setSlideEdge(Gravity.RIGHT);
transitionExit.setSlideEdge(Gravity.LEFT);
我做到了,对我而言,它看起来还不错。希望这有帮助!