我有一个视图的层次结构:
有两个孩子的compView:
bgViewobjectView.我将objectView传递给UIImagePickerController的cameraOverlayView属性。一旦ImagePicker完成,我将更新bgView中的图像,并且我希望继续显示视图树,包括作为overlayView传递给UIImagePickerController的objectView。
问题是,在调用dismissModalViewControllerAnimated关闭UIImagePickerController之后,objectView没有出现,就好像UIImagePickerContoller隐藏了它一样。我检查了调试器,它似乎没有被释放。指针仍然有效。但是视图没有显示。
你知道我可能做错了什么吗?
谢谢,艾迪
下面是一小段代码,向您展示我正在做什么:
来自myViewController.m:
- (void)loadView {
CGRect rect = self.navigationController.view.bounds;
compView = [[UIView alloc] initWithFrame:rect];
bgView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"Storage/dummy_bg.png"]];
objectView = [[PropImageView alloc] initWithImage:[UIImage imageNamed:@"Storage/rasta.png"]];
[objectView setUserInteractionEnabled:YES];
[objectView setMultipleTouchEnabled:YES];
[compView addSubview:bgView];
[compView addSubview:objectView];
self.view = compView;
[self placeObject];
[objectView release];
[bgView release];
[compView release];
}
- (void) placeObject
{
NSLog(@"camera button pressed");
// make sure camera is avaialble before setting it as source
//
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {
#if !TARGET_IPHONE_SIMULATOR
UIImagePickerController* picker = [[UIImagePickerController alloc] init];
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
picker.delegate = self;
picker.allowsEditing = NO;
picker.view.hidden = NO;
picker.cameraOverlayView = objectView;
[self presentModalViewController:picker animated:NO];
[picker release];
#endif
}
// from PickImageAppDelegate.m
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingImage:(UIImage *)image editingInfo:(NSDictionary *)editingInfo
{
// Dismiss the image selection, hide the picker and
[picker dismissModalViewControllerAnimated:YES];
bgView.image = [self rotateImage:image byOrientationFlag:UIImageOrientationRight];
}发布于 2010-11-13 08:16:48
picker dismissModalViewControllerAnimated:是;
那应该是
self dismissModalViewControllerAnimated:是;
https://stackoverflow.com/questions/1962372
复制相似问题