更改方向后如何更改选取器视图的位置

时间:2013-01-16 07:35:04

标签: ios objective-c layout

我的应用程序中有两个带有选择器视图的按钮。在纵向模式下,这些按钮位于左侧,当我将设备的方向更改为横向时,按钮切换到屏幕的右侧,但选择器视图仅保留在左侧。我需要选择器改变它的位置并移动到右侧。

关于如何做到这一点的任何想法?

3 个答案:

答案 0 :(得分:1)

制作pickerView的对象。设置@property和@synthesixe。在你的.xib中建立联系!然后在viewDidLoad()中编写以下代码!

pickerViewObject.autoresizingMask= UIViewAutoresizingFlexibleRightMargin;

如果要添加多个自动调整遮罩,请使用|运营商。 !!

pickerViewObject.autoresizingMask= UIViewAutoresizingFlexibleTopMargin | UIViewAutoresizingFlexibleRightMargin;

答案 1 :(得分:1)

我在代码中做了以下更改,我得到了必需的结果....

-(void) didReceivedRotaionChanged
{
    if([popoverController isPopoverVisible])
    {
        if ([popoverController.contentViewController isKindOfClass:[UINavigationController class]])
        {
            UINavigationController * navController = (UINavigationController*)popoverController.contentViewController;
            NSArray *array = navController.viewControllers;
            if ([array count] > 0)
            {
                if([[array objectAtIndex:0] isEqual:self.nsJobRolePickerViewController])
               {
                    [popoverController dismissPopoverAnimated:NO];
                    [self onClickIJobRoleButton:self.btnJobRole];

                }
                else if([[array objectAtIndex:0] isEqual:self.nsLocationPickerViewController])
                {
                    [popoverController dismissPopoverAnimated:NO];
                    [self onClickILocationButton:self.btnLocation];

                }
            .
            .
            ......

等。

嗯它有点冗长......但它会帮助像我这样的初学者......

答案 2 :(得分:0)

您必须取消选中“实用程序”中提供的“AutoLayout”选项 - >你的.xib文件检查器!!