2012-10-24 66 views
0

我有這個UIButton,他有一個圖像,在正常的iPhone它工作正常,圖像contentMode被設置爲UIViewcontentModeCenter和罰款。但在視網膜上,圖像不是中心,它很大,不適合按鈕框。圖像contentMode問題與視網膜顯示

這是爲什麼,我該如何解決?

[theImageView setImage:Image forState:UIControlStateNormal]; 
[theImageButton setImage:Image forState:UIControlStateHighlighted]; 
[theImageButton setImage:Image forState:UIControlStateSelected]; 
[theImageButton setBackgroundColor:[UIColor clearColor]]; 
[theImageButton addTarget:self action:@selector(dismissKeyboard:) forControlEvents:UIControlEventAllTouchEvents]; 
theImageButton.imageView.contentMode = UIViewContentModeCenter; 

的圖像加載:

- (UIImage *)loadScreenShotImageFromDocumentsDirectory 
{ 
    UIImage * tempimage; 
    NSArray *sysPaths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); 
    NSString *docDirectory = [sysPaths objectAtIndex:0]; 
    NSString *filePath = [NSString stringWithFormat:@"%@/MeasureScreenShot.png", docDirectory]; 
    tempimage = [[UIImage alloc] initWithContentsOfFile:filePath]; 

    return tempimage; 
} 

我不得不說,這是加載到contentMode圖像是已經採取了以編程的屏幕截圖。也許它與它有關(無論如何,在正常的顯示器上它工作正常)。

謝謝!

+0

你如何下載圖片? – rckoenes

+0

@rckoenes我編輯了我的問題,請看看。 –

+0

仍然缺少你如何加載圖像。 – rckoenes

回答

0

聽起來就像你得到一個視網膜圖像,1.0的規模。你需要告訴系統,你的圖像實際上是2.0,如果使用環境來捕捉屏幕截圖,使用

UIGraphicsBeginImageContextWithOptions(..., ..., 0.0); 

0.0告訴它使用當前設備的主屏幕比例,或者你也可以自己指定正確的比例。

+0

謝謝你,但它不工作。抱歉。 –

+0

顯示你如何獲得圖像? –