簡體   English   中英

設置UIToolBar背景圖片

[英]Setting UIToolBar background image

我有一張圖片,希望將其用作iOS 5+應用程序中UIToolBar的背景。 背景圖像根據對視圖執行的操作而變化。 該圖像大於UIToolBar,因此需要縮小圖像的大小,而不是增加大小。

在審查了此處的其他問題以及對該問題的其他研究之后,建議的決議無效。 建議如下:

UIImage *topimg = [[UIImage imageNamed:@"headerBar-Human.png"] resizableImageWithCapInsets:UIEdgeInsetsMake(0, 0, 0, 0)];
[_headerBar setBackgroundImage:topimg forToolbarPosition:UIToolbarPositionTop barMetrics:UIBarMetricsDefault];

我在UIEdgeInsetsMake調用中嘗試了不同的值,但沒有成功。 問題是根本沒有顯示圖像。 顯示默認的藍色工具欄背景。

如果刪除resizableImageWithCapInsets函數,則圖像將顯示,但僅工具欄rect坐標所覆蓋的圖像部分。

我也嘗試過創建UIImageView,添加圖像並將其添加到工具欄,但是結果是相同的。

有沒有人有什么建議?

您可以使用此功能來調整backgroundImage的大小:

- (UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize
{
    UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
    [image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
    UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return newImage;
}

我建議使用_headerBar.frame.size作為第二個參數來調用此函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM