ios中改变UIImagePickerController页面的button的文字为中文

今天调用系统的照相和本地相冊。编辑图片的功能。可是button都是英文,我想改为中文的  取消,选择。重拍

须要改变两种方法

1. UIImagePickerController页面的Cancel和Choosebutton以及截取中得重拍button。想改成中文

本来打算通过获取这些button的指针进行设置的,最后发现能够在工程中直接 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];
}





原文地址:https://www.cnblogs.com/cxchanpin/p/7106433.html