ios - UIImage PNG 不透明度调整
<p><p>我使用具有透明度的 .png 图像创建了一个自定义按钮。但是,当我将它实现为 UIImage 时,透明度会丢失。这是我正在使用的代码:</p>
<pre><code>- (void)setMyCustomBackButton;
{
UIImage *backButtonImage = ;
UIButton *backButton = ;
;
;
backButton.frame = CGRectMake(0, 0, backButtonImage.size.width, backButtonImage.size.height);
UIView *backButtonView = [ initWithFrame:CGRectMake(0, 0, 63, 33)];
backButtonView.bounds = CGRectOffset(backButtonView.bounds, -12, -2);
;
UIBarButtonItem *finalBackButton = [ initWithCustomView:backButtonView];
self.navigationItem.leftBarButtonItem = finalBackButton;
}
</code></pre>
<p>是否有用于透明度的 UIImage 属性?是否与不透明度有关?</p></p>
<br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
<p><p>如果您在图像编辑软件中创建 PNG,请确保在创建图像时已对透明度进行编码。有时,当您将某些内容导出为 PNG 时,某些图像编辑器会提供默认未选中的“保存透明度”选项。</p>
<p>除此之外,PNG 上的任何透明度都将显示在 <code>UIButtonTypeCustom</code> 上。你不需要做任何特别的事情来保持加载 PNG 的 <code>UIImage</code> 的透明度。</p>
<p>在您使用代码中的图像之前,请在预览中打开它以确保存在透明度。</p>
<p>哦,回答你的另一个问题,<a href="http://developer.apple.com/library/ios/#documentation/UIKit/Reference/UIImage_Class/" rel="noreferrer noopener nofollow">UIImage does not have any properties relating to transparency</a> .您拥有的最接近的东西是 <code>UIView</code> 的 <code>alpha</code> 属性,但即使这样也只会改变 <code>UIView</code> 的整体不透明度。</p>
<p><strong>编辑</strong>:我第一次阅读你的问题时错过了这个。试试:</p>
<pre><code>UIBarButtonItem *finalBackButton = [ initWithCustomView:backButton];
</code></pre>
<p>不需要有backButtonView。您可以将 UIButton 作为自定义 View 传入。我用它来创建自定义栏按钮项目。这应该可以解决您的问题。</p>
<p><strong>EDIT 2</strong>:<code>UIBarButtonItem</code> 类没有可以设置的 alpha 属性。此外,修改您设置为 <code>UIBarButtonItem</code> 的自定义 View 的 <code>UIButton</code> 的 alpha 属性不会影响 <code>UIBarButtonItem</code> 的透明度。 </p>
<p>您可以这样做的唯一方法是修改用于 <code>UIButton</code> 的源图像的透明度。</p>
<p>修改您的原始 PNG 以获得所需的透明度(根据您的评论,您需要非常低的透明度)。在导出 PNG 之前,使用图像编辑软件/预览来微调透明度。</p></p>
<p style="font-size: 20px;">关于ios - UIImage PNG 不透明度调整,我们在Stack Overflow上找到一个类似的问题:
<a href="https://stackoverflow.com/questions/17605416/" rel="noreferrer noopener nofollow" style="color: red;">
https://stackoverflow.com/questions/17605416/
</a>
</p>
页:
[1]