iOS-UIActionSheet的简单使用和调用系统相簿
2014-02-24 10:29
351 查看
实现UIActionSheetDelegate
UIActionSheet *menu = [[UIActionSheet alloc]
initWithTitle: @""
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"图库相册",@"拍照", nil];
[menu showInView:self.view];
# pragma mark UIActionSheet method
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex==0) {
[self photoalbumr];//图库相册
}else if(buttonIndex==1){
[self photocamera];//拍照
}else if(buttonIndex==2){
}
[actionSheet release];
}
调用系统的相簿
实现UIImagePickerControllerDelegate
-(void)photoalbumr{
if ([UIImagePickerController isSourceTypeAvailable:
UIImagePickerControllerSourceTypePhotoLibrary]) {
UIImagePickerController *picker =
[[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsImageEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:picker animated:YES];
[picker release];
}
else {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Error accessing photo library"
message:@"Device does not support a photo library"
delegate:nil
cancelButtonTitle:@"Drat!"
otherButtonTitles:nil];
[alert show];
[alert release];
}
}
-(void)photocamera{
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
UIImagePickerController* imagepicker = [[UIImagePickerController alloc] init];
imagepicker.delegate = self;
imagepicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagepicker.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
imagepicker.allowsEditing = YES;
[self presentModalViewController:imagepicker animated:YES];
}
else {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Sorry"
message:@"设备不支持拍照功能"
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
}
}
#pragma mark UIImagePicker method
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage:(UIImage *)image
editingInfo:(NSDictionary *)editingInfo
{
/*将图片存储到document下
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:@"savedImage.png"];
NSData *imageData = UIImagePNGRepresentation(image);
[imageData writeToFile:savedImagePath atomically:NO];
_imgName=@"savedImage.png";
self._imgFilePath=documentsDirectory;
*/
[addPhoto setBackgroundImage:image forState:UIControlStateNormal];
[picker dismissModalViewControllerAnimated:YES];
}
// 完成选取
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[picker dismissModalViewControllerAnimated:YES];
}
UIActionSheet *menu = [[UIActionSheet alloc]
initWithTitle: @""
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"图库相册",@"拍照", nil];
[menu showInView:self.view];
# pragma mark UIActionSheet method
- (void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex
{
if (buttonIndex==0) {
[self photoalbumr];//图库相册
}else if(buttonIndex==1){
[self photocamera];//拍照
}else if(buttonIndex==2){
}
[actionSheet release];
}
调用系统的相簿
实现UIImagePickerControllerDelegate
-(void)photoalbumr{
if ([UIImagePickerController isSourceTypeAvailable:
UIImagePickerControllerSourceTypePhotoLibrary]) {
UIImagePickerController *picker =
[[UIImagePickerController alloc] init];
picker.delegate = self;
picker.allowsImageEditing = YES;
picker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;
[self presentModalViewController:picker animated:YES];
[picker release];
}
else {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Error accessing photo library"
message:@"Device does not support a photo library"
delegate:nil
cancelButtonTitle:@"Drat!"
otherButtonTitles:nil];
[alert show];
[alert release];
}
}
-(void)photocamera{
if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera])
{
UIImagePickerController* imagepicker = [[UIImagePickerController alloc] init];
imagepicker.delegate = self;
imagepicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagepicker.modalTransitionStyle = UIModalTransitionStyleCoverVertical;
imagepicker.allowsEditing = YES;
[self presentModalViewController:imagepicker animated:YES];
}
else {
UIAlertView *alert = [[UIAlertView alloc]
initWithTitle:@"Sorry"
message:@"设备不支持拍照功能"
delegate:nil
cancelButtonTitle:@"确定"
otherButtonTitles:nil];
[alert show];
[alert release];
}
}
#pragma mark UIImagePicker method
- (void)imagePickerController:(UIImagePickerController *)picker
didFinishPickingImage:(UIImage *)image
editingInfo:(NSDictionary *)editingInfo
{
/*将图片存储到document下
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:@"savedImage.png"];
NSData *imageData = UIImagePNGRepresentation(image);
[imageData writeToFile:savedImagePath atomically:NO];
_imgName=@"savedImage.png";
self._imgFilePath=documentsDirectory;
*/
[addPhoto setBackgroundImage:image forState:UIControlStateNormal];
[picker dismissModalViewControllerAnimated:YES];
}
// 完成选取
- (void)imagePickerControllerDidCancel:(UIImagePickerController *)picker
{
[picker dismissModalViewControllerAnimated:YES];
}
相关文章推荐
- iOS-UIActionSheet的简单使用和调用系统相簿
- 使用UIactionSheet调用系统相簿并将图片存储到缓存中
- iOS:简单使用UIAlertVIew和UIActionSheet
- UIActionSheet的使用和系统相机的相关调用
- iOS学习之UIActionSheet的使用
- IOS总结_IOS经常使用的方法集合、调用系统电话、设备区分、APP内永不锁屏
- openURL的使用(iOS调用系统电话、浏览器、地图、邮件等)
- iOS学习之UIActionSheet的使用
- iOS --- 使用openURL调用iOS系统应用
- ios openURL的使用(调用系统电话、浏览器、地图、邮件等)
- SWTableViewCell——一个和iOS 7的系统Mail类似,使用起来简单的UITableViewCell子类
- iOS中UIActionSheet的使用
- IOS中UIActionSheet使用详解
- IOS UIActionSheet的使用方法
- IOS学习之UIActionSheet的使用
- iOS学习之UIActionSheet的使用
- iOS学习之UIActionSheet的使用
- iOS UI基础-6.0 UIActionSheet的使用
- IOS学习——UIActionSheet的使用