добавление UIlabel в представление наложения камеры uiimagepickercontroller Xcode objc - PullRequest
0 голосов
/ 05 января 2019

Я хочу добавить несколько UILabels поверх пользовательского OverlayView моего UIImagePickerController, но не могу заставить его работать.

Вот мой код.

-(IBAction)getPhoto:(id)sender{
picker = [[UIImagePickerController alloc] init];

picker.allowsEditing = NO;

picker.sourceType =  UIImagePickerControllerSourceTypeCamera ;
picker.showsCameraControls = NO;
self.picker.navigationBarHidden = YES;
self.picker.toolbarHidden = YES;

OverlayView = [[OverlayView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width,1024)];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(OverlayView.frame.size.height/2, OverlayView.frame.size.width/2, 30, 100)];
label.textColor = [UIColor whiteColor];
label.text = @"find Me";
[self.OverlayView addSubview:label];
[self.OverlayView bringSubviewToFront:label];
picker.cameraOverlayView = OverlayView;
CGSize screenSize = [[UIScreen mainScreen] bounds].size;   // 320 x 568

float scale = screenSize.height / screenSize.width*3/4;  // screen height divided by the pickerController height ... or:  568 / ( 320*4/3 )

CGAffineTransform translate=CGAffineTransformMakeTranslation(0,(screenSize.height - screenSize.width*4/3)*0.5);
CGAffineTransform fullScreen=CGAffineTransformMakeScale(scale, scale);
picker.cameraViewTransform =CGAffineTransformConcat(fullScreen, translate);
[self presentViewController: picker animated:YES completion:NULL];

}

обзор отображается, и это полный экран, но без метки любые идеи

1 Ответ

0 голосов
/ 05 января 2019

Ваш ярлык просто вне экрана, проверьте его рамку

Вы можете разместить его, например, так, по крайней мере, это будет видно

self.overlayView = [[OverlayView alloc] initWithFrame:CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)];
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(self.overlayView.frame.size.width/2, self.overlayView.frame.size.height/2, 30, 100)];
...