草庐IT

UiButton

全部标签

ios - 调整动画大小后,UIButton 不尊重 Aspect Fill contentMode

我正在使用自动布局。以下是View的初始状态。中间是一个包含在View中的按钮。按钮有contentModeAspectFill,图片设置为按钮的背景图。然后我使用下面的代码来转换View,这将放大中心卡片以填充屏幕,并将图像移动到View的顶部:cardTrailingSpaceConstraint.constant=0cardLeadingSpaceConstraint.constant=0cardView.removeConstraint(cardAspectRatioConstraint)letcardHeightConstraint=NSLayoutConstraint(it

ios - 在 UIButton 中显示事件指示器

我想在按下后将UIButton的内容更改为ActivityIndi​​cator。我知道按钮有一个imageView和一个titleLabel,但我不知道如何在其中任何一个中放置事件指示器。这就是我创建事件指标的方式:letaiView=UIActivityIndicatorView(activityIndicatorStyle:.Gray)aiView.startAnimating()aiView.center=CGPointMake(0,0)aiView.hidesWhenStopped=false 最佳答案 importUIK

ios - 在 Storyboard 中为 UIButton 设置边框

如果不直接在代码中设置它们,我无法在Xcode5中为我的按钮添加边框。如果不制作自定义背景图像,是否有可能无法在Storyboard上执行此操作? 最佳答案 您可以使用key路径。例如图像上描述的角半径(layer.cornerRadius)。您将无法在Storyboard上看到效果,因为此参数是在运行时评估的。现在您可以在UIView中使用swift类别(图片下方的代码)和@IBInspectable以在Storyboard中显示结果(如果您正在使用类别,请仅使用cornerRadius而不是layer.cornerRadius作

ios - Swift 中 UIButton 的圆顶角

我知道我可以使用以下方法将所有四个角都圆化:myBtn.layer.cornerRadius=8myBtn.layer.masksToBounds=true由于我只想进行第二轮,所以我做了一些研究并找到了this:extensionUIView{funcroundCorners(corners:UIRectCorner,radius:CGFloat){letpath=UIBezierPath(roundedRect:self.bounds,byRoundingCorners:corners,cornerRadii:CGSize(width:radius,height:radius))l

ios - Swift 中的 UIButton 未注册触摸

我正在尝试使用Swift创建一个UIButton。它编译得很好,我可以在模拟器中看到我的按钮,但是当我点击它时,没有任何反应。这是我正在使用的代码:letsettings=UIButton()settings.addTarget(self,action:"touchedSet:",forControlEvents:UIControlEvents.TouchUpInside)settings.setTitle("Settings",forState:.Normal)settings.frame=CGRectMake(0,530,150,50)scrollView.addSubview(s

ios - 调整文本的字体大小以适应 UIButton

我想确保按钮文本适合UIButton,而UIButton具有固定大小。当然我可以访问UIButton的titleLabel。在标签中,我会将autoshrink设置为最小字体比例,这似乎对应于self.myButton.titleLabel.adjustsFontSizeToFitWidth=YES;,但实际上并没有相同的行为,因为它只使文本水平适合边界,而不是垂直,因此不会改变字体大小。我如何实际以编程方式调整标签的字体大小以使文本适合标签边界(如下图中的目标所示)?我已经试过了self.myButton.titleLabel.numberOfLines=0;self.myButto

ios - 将闭包作为目标添加到 UIButton

我有一个通用控件类,它需要根据ViewController设置按钮的完成。由于setLeftButtonActionWithClosure函数需要将闭包作为参数,闭包应该设置为取消按钮的操作。它会怎样在Swift中是可能的,因为我们需要将函数名称作为String传递给action:参数。funcsetLeftButtonActionWithClosure(completion:()->Void){self.leftButton.addTarget(,action:,forControlEvents:)} 最佳答案 在iOS14中,A

ios - 检测在 tableview : Swift Best Practices 中按下的 uibutton

我有一个表格View,其中包含代表与特定教师相对应的学生的可变数量的单元格。它们是自定义单元格,带有一个按钮,可以触发到新VC的segue,显示有关单元格所属学生的详细信息。我的问题是:在swift中识别哪个按钮被按下的最佳实践是什么?一旦我知道了索引路径,我就可以确定哪个学生的信息需要传递给下一个VC。在下面的帖子中有一个针对objective-c的很好的答案,但我不确定如何转换为Swift。任何帮助将不胜感激。DetectingwhichUIButtonwaspressedinaUITableView 最佳答案 如果您的代码允许

ios - 在 Swift 中以编程方式更改 UIButton 的文本(填充)

仍在学习Swift,不了解Objective-C。我看到为了以编程方式更改按钮的文本需要使用titleEdgeInsets但我不太确定如何使用它。我想更改底部和左右按钮(填充)中的文本。感谢您的任何回复和/或示例! 最佳答案 仍然适用于:iOS12/Xcode10/Swift4.2/OSX10.13.2iOS9.1/Xcode7.1/Swift2.1/OSX10.10.5:titleEdgeInsets方法对我不起作用。我的按钮的框架紧紧地包裹着文本(我没有指定框架大小),并且框架有红色背景色。完成后:myButton.titleE

swift - 如何在以编程方式创建的 UIButton 上添加 padding-left?

我在UIButton上添加左填充时遇到问题。我有一个带有UIControlContentHorizo​​ntalAlignmentLeft的UIButton。我希望文本显示在左侧,但它太左了。当我给出边界时,它看起来不太好。我想像CSS一样在文本上添加一些填充,大约5px。我在谷歌上搜索了解决方案,但找不到专门针对UIButton的解决方案。在此先感谢您的帮助。 最佳答案 titleEdgeInsetsTheinsetoroutsetmarginsfortheedgesofthebuttontitledrawingrectangle