【问题标题】:Stretching a UIToolbar background image when rotating to landscape旋转到横向时拉伸 UIToolbar 背景图像
【发布时间】:2012-06-29 00:38:51
【问题描述】:

我正在使用以下代码将图像添加到 App Delegate 中的 UIToolbar 的背景:

[[UIToolbar appearance] setBackgroundImage:
[UIImage imageNamed:@"toolbarbackground.png"] 
                             forToolbarPosition:0 barMetrics:UIBarMetricsDefault];

图像宽度为 768 像素(iPad 纵向屏幕宽度的大小)。当我旋转为横向时,图像不会拉伸以填充新的屏幕宽度(1024 像素)。如何在旋转时拉伸以适应屏幕的 UIToolbar 上的自定义背景图像?

【问题讨论】:

    标签: ios xcode ipad


    【解决方案1】:

    工具栏是否自动调整大小?如果没有,设置它的自动调整大小掩码:

    [myToolbar setAutoresizingMask: UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleRightMargin]

    如果工具栏自动调整大小而图像仍然没有,请将图像视图的contentMode 设置为UIViewContentModeScaleToFill

    【讨论】:

      【解决方案2】:
      UIImage *navBarImagePortrait = [UIImage imageNamed:@"navbar-portrait"];
      navBarImagePortrait = [navBarImagePortrait resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 0, 2)];
      UIImage *navBarImageLandscape = [UIImage imageNamed:@"navbar-landscape"];
      navBarImageLandscape = [navBarImageLandscape resizableImageWithCapInsets:UIEdgeInsetsMake(1, 0, 0, 2)];
      
      // custom NaviagionBar
      [self.toobar setBackgroundImage:navBarImagePortrait forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsDefault];
      [self.toobar setBackgroundImage:navBarImageLandscape forToolbarPosition:UIToolbarPositionAny barMetrics:UIBarMetricsLandscapePhone];
      

      【讨论】:

        猜你喜欢
        • 2011-11-12
        • 1970-01-01
        • 2017-01-18
        • 1970-01-01
        • 1970-01-01
        • 2013-12-06
        • 1970-01-01
        • 1970-01-01
        • 2012-09-19
        相关资源
        最近更新 更多