Tag: uitextview

检测UITextView上的select更改?

有没有一种方法来检测用户何时更改文本视图中的选定文本的范围(在UITextView的子类)? 我找不到任何NSNotification。 我试着观察keyvalues,但选定范围的观察者没有被调用 [self addObserver:self forKeyPath:@"selectedRange" options:NSKeyValueObservingOptionNew context:nil]; – (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqual:@"selectedRange"]) { // Do stuff } } 我不想使用UITextView的委托方法

boundingRectWithSize不尊重文字换行

我创build一个UITextView,添加文本,并把它放在视图(与容器) UITextView *lyricView = [[UITextView alloc] initWithFrame:screen]; lyricView.text = [NSString stringWithFormat:@"\n\n%@\n\n\n\n\n\n", lyrics]; [container addSubview:lyricView]; [self.view addSubview:container]; 然后我得到它的大小用于一个button,并将其添加到UITextView CGRect size = [lyrics boundingRectWithSize:CGSizeMake(lyricView.frame.size.width, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[lyricView font]} context:nil]; UIButton *doneButton = [UIButton buttonWithType:UIButtonTypeRoundedRect]; [doneButton setFrame:CGRectMake(56, size.size.height + 55, 208, 44)]; [doneButton setTitle:@"Done" forState:UIControlStateNormal]; [lyricView addSubview:doneButton]; 这在大多数情况下工作 。 这将尊重\换行符(就像我在我的stringWithFormat中添加),但它不会尊重由文本视图自动添加的文字换行。 所以如果lyrics有一行不适合在屏幕上,UITextView将包装它(因为它应该),但现在size略短于它应该是因为它不尊重文本视图包装。

Swift:调整UITextView的行高

devise师品牌新的迅速/ iOS开发在这里。 我的问题是: 如何调整UITextView的行高(行间距)? 我在哪里更改/添加代码? 我目前正在尝试添加代码到AppDelegate.swift文件中的didFinishLaunchingWithOptions函数。 这是我的代码: func application(application: UIApplication!, didFinishLaunchingWithOptions launchOptions: NSDictionary!) -> Bool { // Override point for customization after application launch. var paragraphStyle = NSMutableParagraphStyle() return true } 编辑:然后我selectUITextView并添加以下用户定义运行属性: paragraphStyle.lineSpacing = 40 我已经知道我正在做这个完全错误,但想知道我怎么能完全正确:)谢谢

如何设置像Notes应用程序的UITextView的内容插图

我正在一个应用程序中,我需要在iphone中提供像Notes应用程序的function。 如第一个屏幕截图所示,最初,笔记在内容开始之前留下一个标签,我也想这样做,因为当我将Left Content inset (UITextView)设置为25时,它显示如截图2所示,在这里你可能会看到图像也被移位。 我已经设置图像作为背景。 我不知道如何解决这个问题。 我也尝试通过添加图像作为UITextview的子视图,但它不会重复行,而滚动(线的图像)像笔记应用程序。 我正在通过以下代码设置Textview的背景。 [textView setBackgroundColor:[UIColor colorWithPatternImage:[UIImage imageNamed:@"line_image.png"]]]; 请告诉我,如果我错了或需要额外的努力,以获得所需的输出。 谢谢

如何在界面生成器中获取两个UITextView以在横向方向上正确alignment?

如何在界面生成器中获取两个UITextView以在横向方向上正确alignment? 我有一个占据了屏幕的大约四分之一,另一个占据了剩下的一个。 一切都在肖像看起来不错。 然而在风景中,它们重叠/不正确alignment。 我一直在尝试resize的面具,但似乎没有拿出正确的组合。 我怎样才能使他们在方向变化时保持自己的正确alignment(并且在iPad中使用也是一件好事) 编辑1 – 应该澄清,我实际上在这个屏幕上,从上到下: 菜单栏(顶部) 带标题的UITextView(粗体文本) UITextView与细节文本 所以不知道这是否与答案有所不同。 重点是,即使我玩自动resize的不同设置,我似乎无法得到它,所以在方向改变后,高UITextView的底部仍然整齐地排列在较低的顶部(即,而不是我似乎得到了重叠的效果) 编辑2 – 我把UITextView的边界和事实上,他们是不重叠的景观模式,而是顶部的UITextView(标题)的垂直宽度似乎收缩,使它切断了二行标题。

获取UITextView上特定行的文本

最终,我想知道UITextView中最后一个字符的位置。 我能够通过使用以下方法找出y位置: CGSize size = [textView.text sizeWithFont:textView.font constrainedToSize:CGSizeMake(textView.frame.size.width-16,10000)lineBreakMode:UILineBreakModeClip]; 但是为了得到x的位置,我需要从textview的最后一行获取文本。 我试图从textView.text中删除一个字符,直到size.height改变,以实现这一效果,但我意识到,并不总是等于我想要的,当linebreak被考虑到。 任何build议任何人? 我已经花了整整一天的时间来试图找出这一个…

将UITextView添加到SpriteKit中的场景中

我试图创build一个游戏,并遵循苹果的build议,我正在使用多个场景。 你可以认为游戏是一个文本的重点和点击冒险。 这就是问题所在。 大量的文本,做了一些search,似乎是推荐的方式,或者更确切地说,目前唯一的方法是使用UITextView : [self.view addSubview: textView]; 如果您只有一个SKScene ,那么这是非常好的,因为这是当前视图/ SKView所显示的场景。 我的问题是,当我添加文本到我场景的*视图,这不是应用程序加载的第一个场景(它的第三个或更高),应用程序跳回到它加载的第一个场景(这是我的菜单场景),并愉快地显示所需的文字。 有人知道为什么吗? 我有菜单场景过渡到场景一,到场景二(我希望显示testing)。 如果我想要在每个场景中显示一些以上的单词,请不要说每个场景都需要一个视图,这只是没有意义,但是也许不会使用SpriteKit。 我还是有些什么惊呆了,没有UITextView SK等价物。 无论如何,任何帮助,指针会很好,谢谢。 好的,这里是代码的相关部分….我想。 控制器: – (void)viewWillLayoutSubviews { [super viewWillLayoutSubviews]; // Configure the view. SKView *skView = (SKView *)self.view; skView.showsFPS = YES; skView.showsNodeCount = YES; skView.showsDrawCount = YES; // Create and configure the scene. SKScene *scene = [[GTMainMenu alloc] initWithSize:skView.bounds.size]; […]

从UIStackView中缺less的代码添加UITextView

我试图以编程方式将UITextView添加到UIStackView ,但它不出现在屏幕上。 当我检查Debug View Hierarchy时,它是在视图层次结构中,它有一些约束,但不显示在输出视图。 这是我的代码: let stackView = UIStackView() let textView = UITextView() let button = UIButton() stackView.axis = .Horizontal stackView.spacing = 20 stackView.distribution = UIStackViewDistribution.Fill button.setImage(UIImage(named:"image1"), forState: .Normal) button.setImage(UIImage(named:"image2"), forState: .Selected) textView.textAlignment = NSTextAlignment.Left textView.textColor = UIColor.blackColor() textView.editable = true textView.text = "" stackView.addArrangedSubview(textView) stackView.addArrangedSubview(button) button添加正常。 但我找不到正确显示TextView的方法! 试图添加像下面的宽度/高度约束,但它不工作,或工作不好(取决于变体): let widthConstraint = NSLayoutConstraint(item: textView, […]

如何从iOS的自定义键盘将键值推入UITextView

我正在为UITextView构build一个虚拟键盘。 一切正常,我可以显示键盘和删除键盘以及显示击键。 我正在使用“stringByReplacingCharactersInRange:withString”方法将新的击键放入文本视图。 这个工作,但由于它每次都replacestring,入口点到string的末尾。 这一切都有道理,但不是很有用。 我可以通过在代码中执行检查来解决这个问题,但是可能会有更好的方法。 所以我的问题是这样的。 有没有办法将新的键直接推到UITextView而不需要手动修改UITextView的文本属性的string? 该手册指出,我将不得不自己pipe理目标/行动,但是我想知道我是否错过了要打电话的行动。 看起来,苹果默认键盘必须有一个光滑的拳击方式冲入对象没有明显数量的检查,我将不得不做的打字顺利。 任何帮助将不胜感激。 谢谢,罗布

如何停止在UITextview点击事件keyBoard出现?

在我的iPad应用程序中,我使用的TextView仅用于文本显示。因为我需要显示一个较大的文本这就是为什么我使用UITextview由于其滚动属性而不是使用UILabel。 在我的应用程序中,我不需要在UITextview中编辑文本,但对我来说问题是,当我点击Textview的滚动键盘出现其隐藏我的TextView,所以我想我的键盘是从来没有出现点击event.i进行search但没有find任何合适的解决scheme。任何帮助将得到appriated.Thanx