今天調用系統的照相和本地相冊,編輯圖片的功能,但是按鈕都是英文,我想改為中文的 取消,選擇,重拍
需要改變兩種方法
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]; }