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

LLDarkWindow的windowLevel引起的问题 #14

Open
lizhaobomb opened this issue Jun 18, 2021 · 6 comments
Open

LLDarkWindow的windowLevel引起的问题 #14

lizhaobomb opened this issue Jun 18, 2021 · 6 comments

Comments

@lizhaobomb
Copy link

发现windowLevel设置的层级貌似会导致支付宝SDK网页版拉不起来,修改下level就能正常拉起了

@internetWei
Copy link
Owner

您好,由于我没有对接过支付宝的SDK,所以冒味问一下调用弹出支付宝网页的代码需要设置window吗?您是通过[UIApplication sharedApplication].windows.firstObject来获取keyWindow的吗?

@lizhaobomb
Copy link
Author

您好,由于我没有对接过支付宝的SDK,所以冒味问一下调用弹出支付宝网页的代码需要设置window吗?您是通过[UIApplication sharedApplication].windows.firstObject来获取keyWindow的吗?

您好大佬,弹出支付宝网页的代码是支付宝SDK内置调用的,不过我看官网介绍就是[[[UIApplication shareApplication] windows] index:0]这样获取keyWindow的,跟您说的一样,请问有什么好的解决方案吗?我改windowLevel会有什么影响吗?,另外我还发现一个我改完windowLevel以后statusBar的颜色不对了不知道跟我修改windowLevel 有没有直接的关系

@internetWei
Copy link
Owner

windowLevel的作用是为了能让LLDarkWindow有效且接收系统主题的改变通知。我之前尝试过修改windowLevel,但是修改完之后会导致LLDarkWindow无法收到系统主题的改变。具体表现为:(假设你当前的系统主题模式是深色模式)当你将APP的主题切换成浅色主题模式后,然后你再将系统的主题模式修改为浅色模式,然后你再将APP的主题切换成“跟随系统”,APP无法显示正确的主题模式。因为你第二步操作“将系统的主题模式修改为浅色模式”时系统会调用主题修改的代理方法。

您如果修改了windowLevel,建议按照以上测试流程测试一下APP从“非跟随系统”切换到“跟随系统”后是否正常(注:系统的主题模式要发生改变)。如果没有问题的话则没事。

正常情况下确实可以这样获取keyWindow[[[UIApplication shareApplication] windows] index:0],您提到的支付宝SDK弹出网页,如果您可以传递keyWindow的话,您可以尝试通过UIApplication.sharedApplication.delegate获取AppDelegate实例对象,然后通过这个实例对象获取它的window对象。如果还不能解决问题的话请您联系我,我会加急处理一下您的问题。

@lizhaobomb
Copy link
Author

windowLevel的作用是为了能让LLDarkWindow有效且接收系统主题的改变通知。我之前尝试过修改windowLevel,但是修改完之后会导致LLDarkWindow无法收到系统主题的改变。具体表现为:(假设你当前的系统主题模式是深色模式)当你将APP的主题切换成浅色主题模式后,然后你再将系统的主题模式修改为浅色模式,然后你再将APP的主题切换成“跟随系统”,APP无法显示正确的主题模式。因为你第二步操作“将系统的主题模式修改为浅色模式”时系统会调用主题修改的代理方法。

您如果修改了windowLevel,建议按照以上测试流程测试一下APP从“非跟随系统”切换到“跟随系统”后是否正常(注:系统的主题模式要发生改变)。如果没有问题的话则没事。

正常情况下确实可以这样获取keyWindow[[[UIApplication shareApplication] windows] index:0],您提到的支付宝SDK弹出网页,如果您可以传递keyWindow的话,您可以尝试通过UIApplication.sharedApplication.delegate获取AppDelegate实例对象,然后通过这个实例对象获取它的window对象。如果还不能解决问题的话请您联系我,我会加急处理一下您的问题。

keyWindow是传递不了的,我现在的做法是在调支付的时候修改了下windowLevel,支付完成后再修改回来windowLevel,不知道有没有更好的解决办法

@internetWei
Copy link
Owner

如果您这样做不能解决您当前的问题请您告知我,我将加急处理。
如果这样可以修改您的问题的话您可以先暂时这样改,我会把您遇到的这个问题在下个版本中进行修复。

@lizhaobomb
Copy link
Author

如果您这样做不能解决您当前的问题请您告知我,我将加急处理。
如果这样可以修改您的问题的话您可以先暂时这样改,我会把您遇到的这个问题在下个版本中进行修复。

目前可以暂时解决,但是还是希望大佬可以尽快更新版本,3Q

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

2 participants