草庐IT

ios - UILabel 中的多行文本

有没有办法像UITextView一样在UILabel中包含多行文本,或者我应该改用第二行? 最佳答案 设置换行方式为自动换行,行数为0://SwifttextLabel.lineBreakMode=.byWordWrappingtextLabel.numberOfLines=0//Objective-CtextLabel.lineBreakMode=NSLineBreakByWordWrapping;textLabel.numberOfLines=0;//C#(Xamarin.iOS)textLabel.LineBreakMode=

ios - 在 UILabel 中将文本垂直对齐到顶部

我有一个UILabel,其中包含两行文本的空间。有时,当文本太短时,该文本会显示在标签的垂直中心。如何垂直对齐文本以始终位于UILabel的顶部? 最佳答案 无法在UILabel上设置垂直对齐,但您可以通过更改标签的框架来获得相同的效果。我将标签设为橙色,这样您就可以清楚地看到发生了什么。这是执行此操作的快速简便的方法:[myLabelsizeToFit];如果您的标签的文本较长且超过一行,请将numberOfLines设置为0(这里的零表示行数不受限制)。myLabel.numberOfLines=0;[myLabelsizeTo

ios - 在没有质量损失的情况下调整 UILabel 的大小

我希望能够使用UIPinchGesture调整UILabel的大小,而不会有质量损失。目前我可以调整它的大小,尽管它变得非常模糊。这是我的代码label=UILabel(frame:CGRectMake(0,100,300,50))label.text="HellowWorld"label.textColor=UIColor.blueColor()label.font=UIFont(name:"HelveticaNeue-Bold",size:self.label.frame.height)self.view.addSubview(label)self.resizeRecognizer

swift - 如何在不使用 UITextView 的 UILabel 中检测和创建可点击链接

我正在构建一个聊天应用程序,出于性能原因,我需要使用UILabel而不是UITextView来显示聊天消息。我以前使用过TextView,但滚动时的数据检测非常缓慢且不稳定。问题是目前没有链接/电话/地址等...检测UILabel。我如何知道链接或电话号码在字符串中的位置,然后在UILabel中突出显示并使其可点击?我已经阅读了很多关于如何为链接添加属性来做到这一点的文章,但它们都是您知道范围或子字符串的链接。我想获取任何字符串并找出它是否包含链接以及这些链接在哪里,然后将tapGestureRecognizer添加到标签并根据发生点击的位置执行操作。我尝试合并一个外部库(TTTAtr

ios - 在 Swift 中,如何获取 UILabel 文本基线的 y 位置?

我正在尝试获取UILabel文本的准确基线。label.frame.maxY返回UILabel的box的最大y值。但我真正想要的是文本位置的最大值。忽略“按钮”。我刚刚从谷歌搜索了这张图片。我知道如何获得第一个返回值(maxY),但我想知道如何获得第二个返回值(虚线位于文本下方)。感谢您的帮助! 最佳答案 你可以很简单地实现这一点:letbaselineY=label.frame.origin.y+label.font.ascender; 关于ios-在Swift中,如何获取UILabe

swift - 覆盖 UILabel setText : method in Swift

我确实遇到了一个问题,我在使用UILabel子类的iOS中遇到了一些崩溃。现在我想覆盖setText:以调用layoutIfNeeded因为这可能会根据一些stackoverflow-answers(e.g.thisone)解决问题。但是我怎样才能做到这一点呢?在Objective-C中这没什么大不了的,但我找不到在Swift中覆盖setText:的方法。 最佳答案 覆盖属性text并在didSet中提供代码,当设置text属性时将执行该代码:classMyLabel:UILabel{overridepublicvartext:St

ios - 如何在 Swift 中触摸 UILabel 后对其进行编辑?

我想知道如何在应用程序运行时编辑文本标签。示例:将有一个名为“点击更改文本”的标签。当用户点击它时,它将变为可编辑状态,用户可以输入文本并进入。然后它将更改为新文本。我知道这可以使用UITextFieldDelegate来完成,但我不知道如何处理它,因为当用户触摸它时无法对标签进行操作。 最佳答案 您不能像编辑textField那样编辑标签,但是当用户单击标签时,您可以隐藏标签并取消隐藏textField,当用户完成输入文本时,您可以再次隐藏textField并取消隐藏标签,您可以通过这种方式将textField的文本分配给标签:i

ios - Swift,以编程方式更改 UICollectionViewCell 和 UILabel(在单元格内)的宽度

我已将单元格(UICollectionViewCell)的宽度设置为等于UICollectionView的宽度,并且我正在尝试对包含在该单元格中的UILabel执行完全相同的操作。我认为下面的代码准确地解释了我想要实现的目标。所以我在SO中阅读了一些问题以及一些教程,但我仍然不确定如何实现这一目标。在几个问题中,它是关于使用collectionViewLayout的,但我真的很纠结如何在我的代码中使用它。有任何想法吗?谢谢!funccollectionView(collectionView:UICollectionView,cellForItemAtIndexPathindexPath

ios - 将 IBDesignable 和 prepareForInterfaceBuilder 与 UILabel 一起使用

我正在创建一个名为MyView的UIView子类。其中有一个UILabel(由于某些原因,这是在代码中添加的,而不是在InterfaceBuilder中添加的)。然后我在MyView上有一个名为color的属性。我想要的是让InterfaceBuilder能够选择颜色,然后显示字体设置为该颜色的标签。在我的代码中我有...@IBDesignableclassMyView:UIView{privatelettextLabel=UILabel()@IBInspectablevarcolor:UIColor=.blackColor(){didSet{textLabel.textColor=c

ios - 使用 Swift 制作可点击的 UILabel

我想使用Swift在UILabel文本中设置可点击的特定单词。这可能吗?如果这里有多个标签,我如何检测按下了哪个词? 最佳答案 你不能用简单的标签来做。github中有可用的库。https://github.com/TTTAttributedLabel/TTTAttributedLabel由此您可以使用名为yourLabel.addLinkToURL()的方法classViewController:UIViewController,TTTAttributedLabelDelegate{@IBOutletvarlbl:TTTAttri