В приложении мне нужно взять изображение из UIView. Рамка этого вида - W 1800 и H 1200.performSelectorInBackground и выполнение операции пользовательского интерфейса
Это мероприятие занимает много времени, и экран держится там, пока эта деятельность не закончится.
Мне нужно выполнить это действие в фоновом режиме, чтобы пользователь мог продолжить другие действия.
Что лучше всего подходит для этого. Я пробовал с
- (void)performSelectorInBackground:(SEL)aSelector withObject:(id)arg
Но приложение получило крах, поскольку это не позволяет работать с UI. Если я пойду с
- (void)performSelectorOnMainThread:(SEL)aSelector withObject:(id)arg waitUntilDone:(BOOL)wait
Экранные штыки там, если эта деятельность не закончится.
Мне нужно выполнить следующую деятельность в фоновом режиме
-(void) PrepareImageData
{
UIImage* frontViewImage = [self PreparefrontImage:[self GetSavedFrontImage]];
[self SaveImageinDocumentWithName:frontViewImage FileName:@"frontview.png"];
UIImage* rearViewImage = [self PrepareBackImage:[self GetSavedBackImage]];;
[self SaveImageinDocumentWithName:rearViewImage FileName:@"backview.png"];
}
-(UIImage*) GetSavedBackImage
{
UIImage* background;
UIImage* messageTextview;
UIImage* toTextView;
UIImage* fromTextView;
background = [self GetImageFromView:self toRect:self.frame];
CGRect rect = CGRectMake(0, 0, 1800, 1200);
UIGraphicsBeginImageContext(rect.size);
CGPoint backgroundPoint = CGPointMake(0,0);
[background drawAtPoint:backgroundPoint];
UIImage* backImage = UIGraphicsGetImageFromCurrentImageContex();
UIGraphicsEndImageContext();
return backImage;
}
- (UIImage *) GetImageFromView:(UIView *)aView toRect:(CGRect)aRect
{
CGSize pageSize = aRect.size;
UIGraphicsBeginImageContext(pageSize);
[aView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return image;
}
Пожалуйста, помогите мне в этом.
Спасибо.
Вам нужно добавить больше кода, связанного с тем, что именно вы пытаетесь достичь. – 2010-11-23 07:04:26
Дополнительный код. – 2010-11-23 07:14:03