Пользовательское представление MBProgressHUD не отображается
Я пытаюсь показать изображение на MBProgressHUD с помощью этого кода
MBProgressHUD *HUD = [[MBProgressHUD alloc] initWithView:self.navigationController.view];
[self.navigationController.view addSubview:HUD];
HUD.customView = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"37x-Checkmark"]] autorelease];
HUD.mode = MBProgressHUDModeCustomView;
HUD.labelText = @"تم إرسال وزنك بنجاح";
[HUD show:YES];
[HUD hide:YES afterDelay:1.5];
но это то, что я получаю
в чем проблема?
4 ответа
Решение
Я попробовал ваш код, и он работает для меня.
В файле MBProgressHud.h в комментариях упоминается, что
/**
* The UIView (i.g., a UIIMageView) to be shown when the HUD is in MBProgressHUDModeCustomView.
* For best results use a 37 by 37 pixel view (so the bounds match the build in indicator bounds).
*/
Так что возможно изображение, которое вы использовали, отсутствует или не включено. Пожалуйста, проверьте это.
Это потому, что у вас нет изображения с именем "37x-Checkmark" в вашем проекте. Просто добавьте файл изображения 37x-Checkmark.png в ваш проект.
Вы должны включить изображения из этой ссылки в свой проект xcode, кажется, вы этого не сделали.
Now it is changed with IOS &
-(IBAction)save:(id)sender
{
HUD = [[MBProgressHUD alloc] initWithWindow:[[UIApplication sharedApplication] keyWindow]];
[[[UIApplication sharedApplication] keyWindow] addSubview:HUD];
HUD.delegate = self;
HUD.labelText = @"Initiating Entropy...";
HUD.minSize = CGSizeMake(135.f, 135.f);
[HUD showWhileExecuting:@selector(myTask) onTarget:self withObject:nil animated:YES];
}
-(void)myTask
{
sleep(6);
UIView *v = [[UIView alloc] init];
UIImageView *img = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"check_mark_green"]];
[v setFrame:CGRectMake(0, 0, img.frame.size.width, img.frame.size.height)];
v.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"37x-Checkmark"]];
HUD.mode = MBProgressHUDModeCustomView;
HUD.customView = v;
HUD.labelText = nil;
HUD.detailsLabelText = @"Geo-Location Cordinates Secured";
}
попробуйте это и наслаждайтесь кодом.