UITextField在横屏下的位置设置

UITextField横屏位置设置

假设textField的宽和高分别为:
    float width, height; // 自己设定值,宽高跟位置及坐标无关
要让textField输入框的中心为:
    float center_x, center_y; // 自己设定值,cocos2d下横屏时的坐标
可使用以下方式,其中,textField的属性设置被忽略。
    UITextField *textField = [[UITextField alloc] initWithFrame: CGRectMake(-width/2,-height/2,width,height)]; // 让CGRect的中心在原点
    CGAffineTransform transform = CGAffineTransformMakeRotation(M_P_2); // 旋转90读
    CGAffineTransform newTransform = CGAffineTransformTranslate(transform, center_x, -center_y); // 注意,是-center_y,理由我也不太明白,只是这样做能达到这样的效果,希望以后能知道比较好的解释
    [textField setTransform: newTransform]; // 设置最终得到的CGAffineTransform
    [[[[CCDirector sharedDirector] openGLView] window] addSubview: textField]; // 这样就可以了

posted on 2013-01-16 18:42  紫澜  阅读(515)  评论(0编辑  收藏  举报