ios mbprogresshud 可以改变颜色吗
1个回答
展开全部
一直在iphone上使用MBProgressHUD做提示信息视图,一直都没有什么问题,但用在ipad上使用时,却有时会出现显示方向不正常,如ipad屏幕是横的,但当MBProgressHUD出现时却按照竖屏的方向进行显示,一直不解,仔细看了出现的情况,发现有2种情况会出现方向异常:1.用 presentViewController 出来的控制器,且方向固定,方向与设备方向不一致。2.当UIAlerView和MBProgressHUD一起出现的时候。
我们初始化MBProgressHUD时可能会用到下面方式初始化
[cpp]view plaincopy
UIWindow *window = [[UIApplication sharedApplication] keyWindow];
_hud = [[MBProgressHUD alloc] initWithWindow:window];
但是当UIAlertView出现时会重新初始化一个UIWindow并设置为keyWindow,这时当使用[[UIApplication shareApplication] keyWindow] 时获取到的就不是你本意想拿到的应用程序的UIWindow,另外UIAlertView的UIWindow方向可能就不是横屏的了,所以才出现以上的情况;
解决:使用
_hud= [[MBProgressHUD alloc] initWithView:view];
初始化就行了
还有另一种情况
当你在UIAlertView委托方法
- (void)alertView:(UIAlertView*)alertView clickedButtonAtIndex:(NSInteger)buttonIndex;用第一种方法显示(即需要获取keyWindow),还是不能获取到主程序的keyWindow,
解决方法 用另一个委托就可以了
- (void)alertView:(UIAlertView*)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
以上亲测没有问题
我们初始化MBProgressHUD时可能会用到下面方式初始化
[cpp]view plaincopy
UIWindow *window = [[UIApplication sharedApplication] keyWindow];
_hud = [[MBProgressHUD alloc] initWithWindow:window];
但是当UIAlertView出现时会重新初始化一个UIWindow并设置为keyWindow,这时当使用[[UIApplication shareApplication] keyWindow] 时获取到的就不是你本意想拿到的应用程序的UIWindow,另外UIAlertView的UIWindow方向可能就不是横屏的了,所以才出现以上的情况;
解决:使用
_hud= [[MBProgressHUD alloc] initWithView:view];
初始化就行了
还有另一种情况
当你在UIAlertView委托方法
- (void)alertView:(UIAlertView*)alertView clickedButtonAtIndex:(NSInteger)buttonIndex;用第一种方法显示(即需要获取keyWindow),还是不能获取到主程序的keyWindow,
解决方法 用另一个委托就可以了
- (void)alertView:(UIAlertView*)alertView didDismissWithButtonIndex:(NSInteger)buttonIndex;
以上亲测没有问题
美狐美颜sdk
2024-08-06 广告
2024-08-06 广告
美颜SDK推出多个版本的原因有以下几点:1. 满足不同平台的需求:美颜SDK的不同版本可以满足不同平台的运营需求。例如,对于直播平台,需要更多的美颜功能来吸引观众,而视频聊天平台则需要的是精简版的美颜功能。通过提供不同版本的美颜SDK,可以...
点击进入详情页
本回答由美狐美颜sdk提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询