'sample)full'에 해당되는 글 1건

  1. 2010.10.23 [아이폰 앱 개발] good sample)full screen camera
아이폰어플개발정보2010. 10. 23. 09:49
[아이폰 앱 개발] good sample)full screen camera
  1. 1: Create a Normal View Based Application  
  2.   
  3. 2: Drag in "BTLFullScreenCameraController" *.h and *.m files into Xcode.  
  4.   
  5. 3: In the Header file, implement this:  
  6. #import "BTLFullScreenCameraController.h"  
  7.   
  8. 4: Add in the delegations <UIImagePickerControllerDelegate, UINavigationControllerDelegate>  
  9. {  
  10.     UIView *BaseView;                      //Base View that everything else adds to.  
  11.     BTLFullScreenCameraController *camera; //The Magic  
  12.     UIImageView *LCARS_Frame;              //The ImageView that frames the whole camera [LCARS Frame]  
  13.     UILabel *label;                        //Labels and more labels :D [Possibly the information tags]  
  14. }  
  15. @property (nonatomic, retain) UIView *BaseView;  
  16. @property (nonatomic, retain) BTLFullScreenCameraController *camera;  
  17. @property (nonatomic, retain) UIImageView *LCARS_Frame;  
  18. @property (nonatomic, retain) UILabel *label;  
  19.   
  20. /////////////////////////  
  21. //Camera Initialization  
  22. - (void)initCamera;  
  23. - (void)startCamera;  
  24. /////////////////////////  
  25.   
  26. 5: In the *.m File:  
  27. On the of the @implementation file, add this:  
  28. #define OVERLAY_ALPHA 0.50f  
  29.   
  30. @synthesize BaseView;  
  31. @synthesize camera;  
  32. @synthesize LCARS_Frame;  
  33. @synthesize label;  
  34.   
  35. - (void)loadView  
  36. {  
  37.     self.navigationController.toolbarHidden = YES;  
  38.     self.navigationController.navigationBarHidden = YES;  
  39.     [UIApplication sharedApplication].statusBarHidden = YES; //This code remove the time and battery indicator top bar.  
  40.       
  41.     self.BaseView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)]; //You need to Rect the BaseView to take up the battery indicator's space.  
  42.     self.BaseView.opaque = NO;            //This somehow affects the LCARS Frame image that will be super imposed on top by allow the next line to work.  
  43.     self.BaseView.alpha = OVERLAY_ALPHA;  //This line can only work after the previous line.  
  44.       
  45.     //Add Image First  
  46.     LCARS_Frame = [[[UIImageView alloc] initWithImage:[UIImage imageNamed:@"binocs.png"]] autorelease];  
  47.     [self.BaseView addSubview:LCARS_Frame];  
  48.       
  49.     //Then Label, else label will be under the opacity of the image and get darker.  
  50.     label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 40)];  
  51.     label.text = @"AR Up";  
  52.     label.textAlignment = UITextAlignmentCenter;  
  53.     label.adjustsFontSizeToFitWidth = YES;  
  54.     label.textColor = [UIColor redColor];  
  55.     label.backgroundColor = [UIColor darkGrayColor];  
  56.     label.shadowOffset = CGSizeMake(0, -1);    
  57.     label.shadowColor = [UIColor blackColor];    
  58.     [self.BaseView addSubview:label];  
  59.       
  60.       
  61.     self.view = self.BaseView; //Set BaseView as the default view.   
  62.       
  63.     [super viewDidLoad];  
  64. }  
  65.   
  66. ////////////////////////////////////////////////////////////////////////////////////////////////////  
  67. //Just copy and paste this code, it will work.  
  68. -(void) viewDidAppear:(BOOL)animated  
  69. {  
  70.     [self initCamera];  
  71.     [self startCamera];  
  72. }  
  73.   
  74. - (void) initCamera {    
  75.     if ([BTLFullScreenCameraController isAvailable]) {    
  76.           
  77.         NSLog(@"Initializing camera.");  
  78.         BTLFullScreenCameraController *tmpCamera = [[BTLFullScreenCameraController alloc] init];  
  79.         [tmpCamera.view setBackgroundColor:[UIColor blueColor]];  
  80.         [tmpCamera setCameraOverlayView:self.view];  
  81.         tmpCamera.overlayController = self;  
  82.          
  83. #ifdef BTL_INCLUDE_IMAGE_SHARING  
  84.         BTLImageShareController *shareController = [[BTLImageShareController alloc] init];  
  85.         shareController.delegate = self;  
  86.         [self.view addSubview:shareController.view];  
  87.         tmpCamera.shareController = shareController;          
  88. #endif  
  89.           
  90.         self.camera = tmpCamera;  
  91.         [tmpCamera release];  
  92.     } else {  
  93.         NSLog(@"Camera not available.");  
  94.     }  
  95. }  
  96.   
  97. - (void)startCamera {  
  98.     // TODO: figure out why simply setting the view is not working  
  99.     // since the modal view is not as desirable  
  100.       
  101.     // This isn't working but should:  
  102.     //self.view = self.camera.view;  
  103.       
  104.     // Modal view always works, but it's harder to work with.  
  105.     [self.camera displayModalWithController:self animated:YES];  
  106. }  
  107. //////////////////////////////////////////////////////////////////////////////////////////////////// 
http://www.iphonedevforums.com/forum/sdk-coding-help/2415-code-full-screen-camera-step-bystep-idiot-prove.html
Posted by 오늘마감

댓글을 달아 주세요