我的所有视图都有一个蓝色导航栏,但当我希望用户选择一张照片时,UIImagePicker是黑色的.我尝试使用UIBarStyleDefault将UIImagePickerController的导航栏设置为蓝色,但它对我不起作用,颜色仍为黑色.我尝试过其他UIBarStyle,如UIBarStyleBlack和UIBarStyleOpaque,但它不会改变选择器的导航栏.这是我的代码
// Let the user choose a new photo.
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
imagePicker.delegate = self;
imagePicker.navigationBar.barStyle = UIBarStyleDefault;
[self presentModalViewController:imagePicker animated:YES];
[imagePicker release];
Run Code Online (Sandbox Code Playgroud) 我是目标c和ios开发的新手我想从iphone的视频库中选择一个视频.我可以使用UIImageview选择图像有没有可能做到这一点
我正在开发一个简单的照片和视频捕获应用程序。该应用程序成功允许用户按下按钮即可拍摄照片或视频。但是,一旦完成拍摄照片或视频,它会提供2个选项:“重新拍摄”和“使用照片”或“使用视频”,具体取决于您使用的是哪个。
如果用户点击“重新拍摄”,则只是让他们重新拍摄新照片或视频,但是当用户点击“使用照片”或“使用视频”时,它什么也不做。该应用程序仅将它们带回主应用程序屏幕。
我对如何访问“使用照片” /“使用视频”按钮感到困惑,以便我可以编辑它的代码并将其保存到相机胶卷中。
这是我到目前为止的代码:
ViewController.h:
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController <UINavigationControllerDelegate, UIImagePickerControllerDelegate>
@property UIImagePickerController * pickerController;
-(IBAction)showCameraUI;
@end
Run Code Online (Sandbox Code Playgroud)
ViewController.m:
#import "ViewController.h"
@interface ViewController () <UINavigationControllerDelegate, UIImagePickerControllerDelegate>
@end
@implementation ViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera];
[UIImagePickerController availableMediaTypesForSourceType:UIImagePickerControllerSourceTypeCamera];
NSLog(@"%ld", (long)UIImagePickerControllerSourceTypeCamera); }
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
-(IBAction)showCameraUI{
UIImagePickerController * pickerController = [[UIImagePickerController alloc]init];
pickerController.mediaTypes = …Run Code Online (Sandbox Code Playgroud) 这是我在iphone上更改闪光模式的代码.
在ios7.0中有效:flashmode(0,1,-1)
在ios7.1中不起作用:flashmode(0,0,0)
//UIImagePickerControllerCameraFlashModeOff = -1,
//UIImagePickerControllerCameraFlashModeAuto = 0,
//UIImagePickerControllerCameraFlashModeOn = 1
NSInteger flashMode = self.pickerReference.cameraFlashMode;
NSLog(@"flashmode %i",flashMode);
if (flashMode == UIImagePickerControllerCameraFlashModeAuto) {
[(UIButton *)sender setImage:[UIImage imageNamed:@"flashYesComposeButton.png"] forState:UIControlStateNormal];
self.pickerReference.cameraFlashMode = UIImagePickerControllerCameraFlashModeOn;
}
else if (flashMode == UIImagePickerControllerCameraFlashModeOn) {
[(UIButton *)sender setImage:[UIImage imageNamed:@"flashNoComposeButton.png"] forState:UIControlStateNormal];
self.pickerReference.cameraFlashMode = UIImagePickerControllerCameraFlashModeOff;
}
else if (flashMode == UIImagePickerControllerCameraFlashModeOff)
{
[(UIButton *)sender setImage:[UIImage imageNamed:@"flashAutoComposeButton.png"] forState:UIControlStateNormal];
self.pickerReference.cameraFlashMode = UIImagePickerControllerCameraFlashModeAuto;
}
Run Code Online (Sandbox Code Playgroud) 我发现了一些相关的帖子:
UIImagePickerControllerDelegate到Swift?
如何在swift中使用UIImagePickerController捕获相机?
但它们都不适用于beta 3,因为UIImagePickerControllerDelegate已更改:
func imagePickerController(picker: UIImagePickerController!, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]!)
Run Code Online (Sandbox Code Playgroud)
我的问题是如何从info Array获取UIImage对象?谢谢
目标截图想要

首先,我已经阅读了这些链接
所有链接都使用这些API UIApplication
- setStatusBarStyle:animated:
- setStatusBarHidden:withAnimation:
Run Code Online (Sandbox Code Playgroud)
但是,这些API在iOS 9中已弃用.
那么,如何在iOS 9中获得lightContent statusBar?
我正在使用 anUIImagePickerController来捕获视频并存储它。当我尝试使用静态图像捕获时一切正常,但是当我UIImagePickerController在视频模式下打开时,图片总是有点模糊。当我尝试聚焦不同的对象时,我看到焦点发生了变化,但它仍然有点模糊(因此从未真正聚焦)。这是一个已知问题iOS 9吗?我还尝试了一些来自互联网的示例项目,但结果相同。我用我的iPhone 6s和一个iPhone 6.
这是我使用的代码:
func actionSheet(sheet: ActionSheet, didSelectOption option: Int) {
let picker = UIImagePickerController()
picker.delegate = self
picker.navigationBar.tintColor = UIColor.whiteColor()
let statusView = UIView(frame: UIApplication.sharedApplication().statusBarFrame)
statusView.y = (-(UIApplication.sharedApplication().statusBarFrame.height))
statusView.backgroundColor = colorBlue
picker.navigationBar.insertSubview(statusView, atIndex: 1)
if sheet.tag == actionSheetTagTakePicture {
picker.allowsEditing = true
picker.sourceType = option == 1 ? .Camera : .PhotoLibrary
if option == 1 {
picker.cameraDevice = .Front
}
}
else {
picker.mediaTypes = [kUTTypeMovie as …Run Code Online (Sandbox Code Playgroud) 相机快速拍摄照片后,我无法调整照片大小。目前,我的场景中有一个 100 x 100 的图像视图(用于个人资料照片),但是当我运行该应用程序时,使用相机后照片永远不会出现。这是我的代码。我缺少什么:
@IBAction func employeePhotoButton(sender: AnyObject) {
if UIImagePickerController.isSourceTypeAvailable(UIImagePickerControllerSourceType.Camera) {
var imagePicker = UIImagePickerController()
imagePicker.delegate = self
imagePicker.sourceType = UIImagePickerControllerSourceType.Camera;
imagePicker.allowsEditing = false
self.presentViewController(imagePicker, animated: true, completion: nil)
func resizeImage(image: UIImage, newWidth: CGFloat) -> UIImage {
let scale = newWidth / image.size.width
let newHeight = image.size.height * scale
UIGraphicsBeginImageContext(CGSizeMake(newWidth, newHeight))
image.drawInRect(CGRectMake(0, 0, newWidth, newHeight))
let newImage = UIGraphicsGetImageFromCurrentImageContext()
UIGraphicsEndImageContext()
return newImage
}
func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
employeePhoto.image = resizeImage(image!, newWidth: …Run Code Online (Sandbox Code Playgroud) 我试图检测通过滑动的 imagePickerController 何时通过向下滑动手势或通过取消关闭。
imagePicker 通过此方法加载(https://developer.apple.com/documentation/uikit/uiviewcontroller/1621380-presentviewcontroller)
[rootViewController presentViewController:picker animated:animated completion:NULL];
Run Code Online (Sandbox Code Playgroud)
我们可以通过实现此方法简单地检测 pickerController 是否通过取消关闭(https://developer.apple.com/documentation/uikit/uiimagepickercontrollerdelegate/1619133-imagepickercontrollerdidcancel)
但是,我还想检测它是否通过向下滑动关闭(对于 iPhone X,...,我们可以向下滑动以关闭以模式方式显示的视图)
使用 Swift,我可以用以下代码检测它:
extension UIImagePickerController {
open override func viewDidDisappear(_ animated: Bool) {
super.viewDidDisappear(animated)
// detecting
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道在 Objective C 中是否有等效的方法(因为我正在从事的项目是用 Objective C 编写的)?或欢迎任何其他建议:D
我是iOS开发的新手,所以我很困惑.我有一个ViewController,在这个ViewController中有很多UIButtons.如何打开选择器并将图像添加到推文使用addImage?PS:我正在使用Storyboard.
谢谢,抱歉我的英文...... :)