Когда пользователь нажимает на UIButton, что имеет фоновое изображение, которое я положил из раскадровки, он будет отображать UIActionSheet позволяя пользователю выбрать один из вариантов:не может изменить Фон UIButton КСН
1) Сфотографируйте от камеры
2) Изображение из галереи фотографий.
Если, например, он выбирает фотографию из фотографий галереи, когда он выбирает изображение и возвращается к представлению и отображает изображение, я хочу изменить фоновое изображение UIButton на другое, которое я хочу поместите его программно.
Вот код ViewController.h
#import <UIKit/UIKit.h>
@interface ViewController : UIViewController<UIImagePickerControllerDelegate,UINavigationControllerDelegate> {
UIImageView * imageView;
UIToolbar *toolbar ;
}
@property (weak, nonatomic) IBOutlet UIBarButtonItem *ButtonPicture;@property (weak, nonatomic) IBOutlet UIToolbar *toolbar;
@property (nonatomic, retain) IBOutlet UIImageView * imageView;
- (IBAction)PictureButton:(UIButton *)sender;
@end
Вот код ViewController.m
- (IBAction)PictureButton:(UIButton *)sender {
NSLog(@"Click button take picture in toolbar view 1");
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Photo"
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"Picture From Camera", @"Picture From Gallery", nil];
[actionSheet setTag:1001];
[actionSheet showInView:self.view];
}
-(void)actionSheet:(UIActionSheet *)actionSheet clickedButtonAtIndex:(NSInteger)buttonIndex {
switch (buttonIndex)
{
case 0: {
// Take a picture from camera
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypeCamera;
[self presentModalViewController:picker animated:YES];
}
break;
case 1: {
// take a picture from gallery photos
UIImagePickerController * picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
[self.view addSubview:toolbar];
[self presentModalViewController:picker animated:YES];
}
break;
}
-(void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[self dismissViewControllerAnimated:YES completion:nil];
UIImage *gotImage =
[info objectForKey:UIImagePickerControllerOriginalImage];
[PictureButton setBackgroundImage:gotImage forState:UIControlStateNormal];
}
Когда я выбрать изображение из библиотеки, я вернуться к представлению я покажу изображение, которое я выбрал, но фон UIBUtton не изменится на другой фон. Благодаря
Что такое 'PictureButton'? где вы его заявили? – Mani
в «ViewController.h» Я ставлю это так: - (IBAction) PictureButton: (UIButton *) отправитель; – user3162198