Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

左滑返回时出现黑屏 #4

Closed
codetalks-new opened this issue Sep 1, 2013 · 16 comments
Closed

左滑返回时出现黑屏 #4

codetalks-new opened this issue Sep 1, 2013 · 16 comments

Comments

@codetalks-new
Copy link

RT:
具体描述:
(0)一个子Activity继承自SwipeBackActivity,没有作任何修改。
(1)在一个子Activity中从左边滑动想返回时,屏幕变黑。再按两次按物理返回键时
可以回到父Activity中(感觉进入了一个子Activity与父Activity的一个中间黑色界面)
(2)系统MIUI V5 3.8.16

@codetalks-new
Copy link
Author

嗯,我想我找到会有一个中间的黑屏的状态的原因了。
因为我的主Activity由Fragment组成,我在其中的一个Fragment中打开了子Activity。
这个时候按返回(并没有到父Activity的状态)。
我在Fragment中换成用getActivity().startActivity()这样的方式来启动的话,就没有中间有一个黑屏的问题的。
但是。滑动返回时,还是会黑屏,也就是说不是显示父Activity的UI。

@ikew0ng
Copy link
Owner

ikew0ng commented Sep 2, 2013

还有这个问题啊。 我查一下

@codetalks-new
Copy link
Author

嗯,我将主题中加上,你写的

<item name="android:windowIsTranslucent">true</item> 

就正常了.

@lofei117
Copy link

请教一下。我也遇到了类似的问题,系统是MIUI-3.10.18 测试代码是按照demo里的移植到eclipse的maven工程,也加了

<item name="android:windowIsTranslucent">true</item> 

但还是会有黑屏。提现为滑动返回无法呈现之前的activity,只有当滑动的整个activity结束后,之前的activity才会弹出。
不知道是不是哪儿可能忘写了,但是是按照readme里面步骤来的,还在怀疑是不是自己什么地方漏了

@ikew0ng
Copy link
Owner

ikew0ng commented Nov 26, 2013

我的意思是有没有使用 透明的主题?

@lofei117
Copy link

是miui默认的主题,应该不是这个原因。我在google play上下载的你的demo是正常的,所以我想是不是我什么地方忽略了,但是按照步骤来也没找到头绪。
我把lib里的

mActivity.getWindow().setBackgroundDrawable(new ColorDrawable(0));
mActivity.getWindow().getDecorView().setBackgroundDrawable(null);

这两行注释以后运行,背景不是黑色而是白色了,下层的activity仍然不显示,只有等上层的activity关闭后才会从左侧弹出
如果没有注释的话就是黑色,也是从左侧弹出

@lofei117
Copy link

呃……在SwipeBackActivityHelperconvertActivityFromTranslucent函数里,Method method = Activity.class.getDeclaredMethod("convertFromTranslucent", null);触发了NoSuchMethodException异常……

@ikew0ng
Copy link
Owner

ikew0ng commented Nov 26, 2013

1.在Manifest中为App设置主题。
2.4.4以下 convertActivityFromTranslucent 方法不起作用,直接忽略exception

@lofei117
Copy link

-。- 解决了。……
<item name="android:windowIsTranslucent">true</item>
这一句我放在了AppBaseTheme里,然后AppTheme继承它,在Manifest里设置的是AppTheme,结果不正确,我把那一句拿出来放到AppTheme中就好了……
在demo里也是放在AppBaseTheme里的呀……为啥我就不对……
呃……

@lofei117
Copy link

忘了说了,谢谢哈 ^ ^ 占用您宝贵时间了

@ikew0ng
Copy link
Owner

ikew0ng commented Nov 26, 2013

小意思~

@huimieni
Copy link

android 5.0以上全是黑屏--getDeclaredMethod方法变了

@410133062
Copy link

这个问题怎么解决 什么时候能修复

@BryceLee
Copy link

BryceLee commented Nov 8, 2016

试了设置主题的方式,还是黑屏。 - -

@ibrucekong
Copy link

ibrucekong commented Dec 4, 2016

系统版本:android5.1;
我的主界面是Fragment,二级界面是Activity;
我的是白屏,但是设置<item name="android:windowIsTranslucent">true</item>之后,还是白屏;
不加finish方法,返回后是一个白屏, 要再次返回才能返回到主界面

@KingOfSu
Copy link

这个能解决左滑关闭黑屏闪一下的问题,但是在华为最新系统那里,通过scheme打开本应用的时候,会导致屏幕Activity透明,其他应用不会

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

8 participants