Android的活动输入转换在重叠视图上无法正常工作

Android的活动输入转换在重叠视图上无法正常工作,第1张

概述这是场景: 我正在尝试在两个活动之间声明过渡动画 – 主要和细节. Master是带有图像的RecyclerView列表,详细信息是LinearLayout,带有来自父列表的标题图像.转换以XML格式声明并绑定到详细活动,如下所示: <item name="android:windowSharedElementEnterTransition">@transition/activity_enter_ 这是场景:

我正在尝试在两个活动之间声明过渡动画 – 主要和细节. Master是带有图像的RecyclerVIEw列表,详细信息是linearLayout,带有来自父列表的标题图像.转换以XML格式声明并绑定到详细活动,如下所示:

<item name="androID:windowsharedElementEnterTransition">@Transition/activity_enter_shared</item><item name="androID:windowEnterTransition">@Transition/activity_enter</item>

在RecyclerVIEw的适配器转换中,如下所示:

final ActivityOptions options = ActivityOptions.makeSceneTransitionAnimation(    mContext,imgVIEw,VIEwCompat.getTransitionname(imgVIEw));mContext.startActivity(new Intent(mContext,ChildActivity.class),options.toBundle());

问题是:
在@ Transition / activity_enter中,我正在对某些布局元素(例如后退按钮)应用淡入淡出.这些元素放在FrameLayout上的图像上.这似乎导致了淡入淡出视图的问题,而不是平滑地出现在屏幕上,“d出”.这仅在视图重叠时发生 – 如果放置在linearLayout中,则每个事件都按预期工作.

fade在@ Transition / activity_enter中声明如下:

<fade    androID:startDelay="300"    androID:duration="100"    androID:interpolator="@androID:interpolator/linear">    <targets>        <target androID:targetID="@ID/target_ID" />    </targets></fade>

注1 – 如果在Activity fade中以编程方式触发工作正常:

final VIEwGroup frame = (VIEwGroup) findVIEwByID(R.ID.frame);frame.setonClickListener(new VIEw.OnClickListener() {    boolean visible;    @OverrIDe    public voID onClick(VIEw v) {        TransitionManager.beginDelayedTransition(frame);        visible = !visible;        frame.findVIEwByID(R.ID.target_ID).setVisibility(visible ? VIEw.VISIBLE : VIEw.GONE);    }});

注2 – 共享转换(@ Transition / activity_enter_shared)是自定义的,但是,使用默认转换不能解决问题.

注3 – 最简单的布局如下:

<FrameLayout>    <ImageVIEw />    <Imagebutton androID:ID="@+ID/target_ID" /></FrameLayout/>

但问题不是特定于FrameLayout而是特定于视图的重叠.

注4 – 例如,在以下布局中,Lorem将d出,而ipsum将淡入.

解决方法 好吧,我为那些感兴趣的人找到了答案.

我必须设置

<item name="androID:windowsharedElementsUSEOverlay">false</item>

在我的风格定义中.

从documentation开始:

Indicates whether or not shared elements should use an overlay during Transitions. The default value is true.

总结

以上是内存溢出为你收集整理的Android的活动输入转换在重叠视图上无法正常工作全部内容,希望文章能够帮你解决Android的活动输入转换在重叠视图上无法正常工作所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1123971.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-30
下一篇2022-05-30

发表评论

登录后才能评论

评论列表(0条)

    保存