سؤال

كيف أفعل هذا.. لدي مندوب تطبيق... أضفت فيه وحدة تحكم uinavigation من خلال الكود...

هنا هو الكود الخاص بي...

- (void)applicationDidFinishLaunching:(UIApplication *)application {    
HomeScreenController  *homeScreenobj=[[HomeScreenController alloc] initWithNibName:@"HomeScreen" bundle:[NSBundle mainBundle]];
navController = [[UINavigationController alloc] initWithRootViewController:homeScreenobj]; 
[homeScreenobj release];  
   [window addSubview:navController.view];

// Override point for customization after app launch    
 [window makeKeyAndVisible];
}

على الشاشة الرئيسية لدي شريط تبويب به ثلاثة أزرار، وهذه صورة

alt text

أريد التقاط صورة من المكتبة من imagepickerController...ولكنني أواجه مشكلات غريبة

تمت إضافته إلى النافذة الرئيسية ولا أعرف السبب

هنا صورة لهذا

alt text

لماذا لا يظهر هذا في كامل الشاشة....وأيضا إذا وضعت هذا الخط

imagePickerController.allowsImageEditing = YES;

إنه معلق ولا أعرف السبب..إليك الكود الخاص بي لالتقاط الصورة....

-(IBAction)TakePhotoClicked
{
imagePickerController = [[UIImagePickerController alloc] init];
imagePickerController.allowsImageEditing = YES;
imagePickerController.delegate = self;
imagePickerController.sourceType = 
UIImagePickerControllerSourceTypePhotoLibrary;
//self.navigationController.navigationBar.hidden=YES;
[self.navigationController pushViewController:imagePickerController animated:NO];
//[imagePickerController release];
}

إذا لم أضع هذا السطر على //self.navigationController.NavigationBar.hidden=yes ؛

يظهر مثل هذا

alt text

حيث الضغط على زر الصفحة الرئيسية العودة إلى المنزل ...

هل كانت مفيدة؟

المحلول

يجب عليك تقديم UIImagePickerController كوحدة تحكم عرض مشروط.لذا، لا تضغط على وحدة التحكم الخاصة بك، بل قم بتقديمها على أنها مشروطة:

[self.navigationController presentModalViewController:imagePickerController animated:YES];

يمكنك فتح منتقي الصور باستخدام -[UINavigationController dismissModalViewControllerAnimated:] للعودة إلى وحدة تحكم العرض الأخيرة على المكدس.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top