아주 쉽게, 아주 가능한 구현할 :
이뿐만 아니라 새로운 UIAlertController와 함께 작동 :
UIAlertController *alertC = [UIAlertController alertControllerWithTitle:nil message:nil preferredStyle:UIAlertControllerSytleActionSheet];
//Add your Actions
...
UIAlertAction *snapshot = [UIAlertAction actionWithTitle:@"Snapshot" style:UIAlertActionSytleDefault handler:^(UIAlertAction *action) {
}
//create a UIImage to display since it's technically a tableView:
UIImage *snapshotImage = [UIImage imageNamed:@"snapshot.png"];
//add it to the UIAlertAction of your choosing
[snapshot setValue:snapshotImage forKey:@"image"];
...
[alertC addAction:snapshot];
[self presentViewController:alertC animated:YES completion:nil];
이전 아이폰 OS 8이 될 수 있습니다 이 방법 :
UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"this is a title"
delegate:self
cancelButtonTitle:@"Cancel"
destructiveButtonTitle:nil
otherButtonTitles:@"one", @"two", nil];
[[[action valueForKey:@"_buttons"] objectAtIndex:0] setImage:[UIImage imageNamed:@"yourImage.png"] forState:UIControlStateNormal];
[[[action valueForKey:@"_buttons"] objectAtIndex:0] setImage:[UIImage imageNamed:@"yourImage_Highlighted.png"] forState:UIControlStateHighlighted];
[actionSheet showInView:self.view];
이 점에 대한 몇 가지주의 사항은 H x W demensions가 무엇이든간에 Action Sheet에 삽입 된 행이 얼마나 커질 지에 관계없이 이미지의 크기를 적절히 조정했는지 확인하십시오. 따라서 30x30과 같은 것을 사용하십시오. 또한 이미지 색상은 파란색으로 지정됩니다. 또한이 API는 공개 API로 간주되지 않으므로 앱이 이런 방식으로 승인을 받지만 위험을 감수해야합니다.
감사합니다. 친구가되어 여기에 귀하의 예를 얻지 못했습니다. 문제가 발생했습니다. 그냥 내 행동 촬영 방법을 보여주는 내 질문을 편집, 내 코드에 따라 귀하의 예를 변경하시기 바랍니다 수 어쩌면 내가 그것을 얻을 것인가? 고마워요. –
UIActionSheet가 더 이상 사용되지 않습니다. @nickshmick iOS8을 엄격하게 코딩하고 있습니까? – soulshined
@nickshmick> iOS8 이상 코딩하지 않은 경우 수정 된 답변 참조 – soulshined