相关疑难解决方法(0)

UIButton:如何使用imageEdgeInsets和titleEdgeInsets使图像和文本居中?

如果我只在一个按钮中放置一个图像并将imageEdgeInsets设置得更接近顶部,则图像保持居中并且所有图像都按预期工作:

[button setImage:image forState:UIControlStateNormal];
[button setImageEdgeInsets:UIEdgeInsetsMake(-15.0, 0.0, 0.0, 0.0)];
Run Code Online (Sandbox Code Playgroud)

如果我只在一个按钮中放置一个文本并将titleEdgeInsets设置得更接近底部,则文本保持居中并且所有文件都按预期工作:

[button setTitle:title forState:UIControlStateNormal];
[button setTitleEdgeInsets:UIEdgeInsetsMake(0.0, 0.0, -30, 0.0)];
Run Code Online (Sandbox Code Playgroud)

但是,如果我将4条线放在一起,文本会干扰图像,并且两者都会失去中心对齐.

我的所有图像都有30像素的宽度,如果我在setTitleEdgeInsets的UIEdgeInsetMake的左参数中放入30,则文本再次居中.问题是图像永远不会居中,因为它似乎依赖于button.titleLabel大小.我已经尝试了许多计算按钮大小,图像大小,titleLabel大小,永远不会完全居中.

有人已经有同样的问题吗?

objective-c uibutton ios

158
推荐指数
11
解决办法
13万
查看次数

UIButton中的图像下的标签

我正在尝试创建一个按钮,在图标下面有一些文字(有点像app按钮)但是它似乎很难实现.任何想法我怎样才能让文字显示在图像下方UIButton

text label image uibutton ios

151
推荐指数
17
解决办法
8万
查看次数

UIButton有图像和文字吗?

我有一个尺寸宽度为200,高度为270的按钮.我希望在同一个按钮上有文字和图像.不作为该文本的背景图像.而不是这个,我想在同一个按钮上显示高度为120的文本和高度为150的图像.怎么做?

iphone xcode uibutton ios

65
推荐指数
6
解决办法
8万
查看次数

自定义 UIButton imageEdgeInsets/titleEdgeInsets 不起作用

和不适用于我的自定义imegEdgeInsets课程。我通过笔尖设置插图titleEdgeInsetsUIButton

在此输入图像描述

在此输入图像描述

自定义UIButton类代码

class FilledButton: kButton {
    private var bgColor = AppTonalPalette.color(.primary)
    private var bgColorPressed = AppTonalPalette.color(.primary).withAlphaComponent(0.88)
    private var foregroundColor = AppTonalPalette.color(.onPrimary)
    
    private var bgColorDisabled = UIColor.init("#1F1F1F", alpha: 0.12)
    private var foregroundColorDisabled = AppTonalPalette.color(.onSurface)
    
    override func layoutSubviews() {
        super.layoutSubviews()
        updateViews()
    }
    
    func updateViews() {
        tintColor = isEnabled ? foregroundColor : foregroundColorDisabled
        setTitleColor(isEnabled ? foregroundColor : foregroundColorDisabled, for: .normal)
        setTitleColor(isEnabled ? foregroundColor : foregroundColorDisabled, for: .highlighted)
        backgroundColor = isEnabled ? (isHighlighted ? bgColorPressed : bgColor) …
Run Code Online (Sandbox Code Playgroud)

uibutton ios swift

6
推荐指数
1
解决办法
2636
查看次数

UIButton titleEdgeInsets

titleEdgeInsets用于对齐按钮上的标题和图片.我在左边做了图像,在右边做了标题.但是当我点击按钮时,标题向左移动.谢谢

UIImage *image = [UIImage imageNamed:imageName];
    [self setImage:image forState:UIControlStateNormal];

CGSize imageSize = self.imageView.frame.size;
CGSize titleSize = self.titleLabel.frame.size;

self.imageEdgeInsets = UIEdgeInsetsMake(0, 10, 0, 0);
self.titleEdgeInsets = UIEdgeInsetsMake(0, ((self.frame.size.width-titleSize.width)/2)-imageSize.width, 0, 0);
self.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
Run Code Online (Sandbox Code Playgroud)

状态正常

单击状态

uibutton ios

5
推荐指数
1
解决办法
2万
查看次数

iPhone - 图像未在UIButton的中心对齐

我已经使用以下属性定制了UIButton:

  1. 84x44帧
  2. 84x44背景图片
  3. 应该居中的32*32图像

但我的图像总是与左边对齐.如何将其对准UIButton上的中心位置?

我的按钮上有一个隐藏的标题(clearColor).这些标题是字典中的key_value,因此我知道按下了哪个按钮并返回字典中的相应值.我现在明白,正是这些文字推动了我的形象,但我该如何解决?

在属性检查器下,有一个名为Edge的tap,设置为Image.我将左值设置为22,所有图像都对齐到中心.有人可以向我解释这是如何工作的吗?

xcode uibutton uiimage ios

4
推荐指数
1
解决办法
4212
查看次数

UIButton图像位置取决于titleLabel的框架

我的问题很简单但我找不到解决方案.我有一个UIButton,它有一个标题和图像.无论发生什么事情我想要修复图像位置所以我这样设置:

[button setImageEdgeInsets:UIEdgeInsetsMake(0.f, 0.f, 0.f, IS_IPHONE ? 20.f : 60.f)];
Run Code Online (Sandbox Code Playgroud)

我没有为按钮设置任何位置titleLabel.

接下来发生的是我为按钮设置新标题,标题标签缩小或扩展以适应新文本,并且令人惊讶地使图像移动,因此很明显,尽管应用了图像边缘插入,但图像位置取决于标签的框架.我看到两种可以使用的解决方案:

1)使图像独立于标签的框架

2)为标签设置固定大小

但我不知道如何实现它们.能否请您给我一些建议如何解决这个问题?

objective-c uibutton uikit ios

3
推荐指数
2
解决办法
3223
查看次数

标签 统计

ios ×7

uibutton ×7

objective-c ×2

xcode ×2

image ×1

iphone ×1

label ×1

swift ×1

text ×1

uiimage ×1

uikit ×1