如何在 iOS 中像 UITabBarItem 一样设计 UIButton?
Posted
技术标签:
【中文标题】如何在 iOS 中像 UITabBarItem 一样设计 UIButton?【英文标题】:How to design UIButton Like UITabBarItem in iOS? 【发布时间】:2015-12-21 03:42:05 【问题描述】:我必须在特定屏幕的底部放置 6 个按钮,例如 UITabBar
。我已将 UIButton
与图像和文本一起放置,但无法将图像移动到居中对齐的按钮顶部,并将按钮文本放在居中对齐的图像下方。它应该看起来像UITabBarItem
。
如何在UIButton
中实现这一点?任何人都可以请帮助我吗?谢谢。
我尝试了此代码,但文本不可见且图像未正确对齐。你能帮帮我吗?
[self.languageButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
[self.languageButton setTitle:@"Language" forState:UIControlStateNormal];
[self.languageButton.titleLabel setFont:[UIFont boldSystemFontOfSize:10.0]];
UIImage *image = [UIImage imageNamed:@"lang_change_white"];
[self.languageButton setTitleEdgeInsets:UIEdgeInsetsMake(0.0, -image.size.width, -25.0, 0.0)];
[self.languageButton setImage:image forState:UIControlStateNormal];
[self.languageButton setImageEdgeInsets:UIEdgeInsetsMake(-15.0, 0.0, 0.0, -self.languageButton.titleLabel.bounds.size.width)];
提前致谢。
【问题讨论】:
【参考方案1】:-
您的代码对我来说工作正常,那么有什么问题?
请用按钮的图像和文字说明您想要什么..?
【讨论】:
感谢您的回答。但是,这不像你的屏幕截图那样工作。我在 Storyboard 中设计了按钮,大小为“动态宽度和固定高度 50px”。我附上了屏幕截图。你能帮帮我吗?谢谢。 我在情节提要中用“动态宽度和固定高度 50px”检查它对我来说很好。所以请检查一下图像大小。如果它很大,那么就会产生这种类型的问题。谢谢@Yuvaraj.M 感谢您的回复。我的图像尺寸是 32*32。你的是什么?我尝试调整按钮中的图像大小。如果你有任何想法可以请你建议吗?谢谢。【参考方案2】:您必须制作 2 个特殊的 image
,其中包含 symbol
和 text
。一张图片是白色图片,第二张是图片的任何color
。当用户按下button
时,将background
图像设置为您的color
图像并将初始image
设置为白色color
image
。
【讨论】:
以上是关于如何在 iOS 中像 UITabBarItem 一样设计 UIButton?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 iOS 4 中更改 UITabBarItem 中文本的颜色
如何在 iOS 11 中像点击状态栏一样调用缓慢滚动到顶部的动画?
UITabBar 在 iOS7 上更改一个 UITabBarItem 的背景颜色
iOS 11 中的横向 UITabBar 中的 UITabBarItem