2012-10-26 43 views
0

我正在做一個應用程序,我試圖讓一個按鈕移動到某些座標,具體取決於手機的屏幕尺寸(4,4S,5等)。我有正確的語法,但按鈕不會移動。這是我的.m文件的ViewController的一部分:按鈕不移動在我的界面

- (void)viewDidLoad 
{ 
    if([[UIScreen mainScreen] respondsToSelector:NSSelectorFromString(@"scale")]) 
    { 
     if ([[UIScreen mainScreen] scale] < 1.1) { 
      CGRect frame = done.frame; 
      frame.origin.x = 129; //New x coordinate 
      frame.origin.y = 401; //New y coordinate 
      done.frame = frame; 
      [done setNeedsDisplay]; 
      NSLog(@"Standard Resolution"); 
     } 
     if ([[UIScreen mainScreen] scale] > 1.9) { 
      NSLog(@"High Defenition Resolution"); 
     } 
    } 

    [super viewDidLoad]; 
    // Do any additional setup after loading the view from its nib. 
} 

NSLog被觸發在控制檯說Standard Resolution,但按鈕​​不會從那裏我把它放在了XIB文件移動。這可能是一個小小的愚蠢錯誤,但希望你能幫助我。

P.S.是的,我沒有鏈接我的IBOutlet到按鈕。

+0

只需將框架設置爲新的座標將不會強制按鈕移動。你應該在done.frame = frame之後調用[done setNeedsDisplay];讓它知道你已經做出了改變並且需要重新繪製。雖然我不是100%確定的,因爲我不使用XIB文件。讓我知道這是否有效。 – TheJer

+0

我添加了它,但不幸的是它仍然不起作用:( – WillB

+0

我也更新了我的帖子,增加了... – WillB

回答