今天調用系統的照相和本地相冊,編輯圖片的功能,但是按鈕都是英文,我想改為中文的 取消,選擇,重拍
需要改變兩種方法
1. UIImagePickerController頁面的Cancel和Choose按鈕以及截取中得重拍按鈕,想改成中文
本來打算通過獲取這些按鈕的指針進行設置的,最後發現可以在工程中直接 project-->info-->Localization--->language中add一個簡體中文就可以了
參考:http://www.cocoachina.com/bbs/read.php?tid=132828
2.定制當然也有方法
首先通過遞歸的方法不斷地在self.view的hierarchy中不斷遍歷,直到查找到這個view,獲取其指針進行操作
-(UIView *)findView:(UIView *)aView withName:(NSString *)name{
Class cl = [aView class];
NSString *desc = [cl description];
if ([name isEqualToString:desc])
return aView;
for (UIView *view in aView.subviews) {
Class cll = [view class];
NSString *stringl = [cll description];
if ([stringl isEqualToString:name]) {
return view;
}
}
return nil;
}
-(void)addSomeElements:(UIViewController *)viewController{
UIView *PLCameraView = [self findView:viewController.view withName:@"PLCameraView"];
UIView *PLCropOverlay = [self findView:PLCameraView withName:@"PLCropOverlay"];
UIView *bottomBar = [self findView:PLCropOverlay withName:@"PLCropOverlayBottomBar"];
UIImageView *bottomBarImageForSave = [bottomBar.subviews objectAtIndex:0];
UIButton *retakeButton=[bottomBarImageForSave.subviews objectAtIndex:0];
[retakeButton setTitle:@"重拍" forState:UIControlStateNormal];
UIButton *useButton=[bottomBarImageForSave.subviews objectAtIndex:1];
[useButton setTitle:@"保存" forState:UIControlStateNormal];
UIImageView *bottomBarImageForCamera = [bottomBar.subviews objectAtIndex:1];
UIButton *cancelButton=[bottomBarImageForCamera.subviews objectAtIndex:1];
[cancelButton setTitle:@"取消" forState:UIControlStateNormal];
}
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated
{
[self addSomeElements:viewController];
}