标签: uitextviewdelegate

限制uitextview中的字符数

我正在给一个文本视图来推特一些字符串.

我正在应用以下方法将字符数限制为140.

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text{


    if([text isEqualToString:@"\b"]){
        DLog(@"Ohoooo");
        return YES;
    }else if([[textView text] length] > 140){

        return NO;
    }

    return YES;
}
Run Code Online (Sandbox Code Playgroud)

除了退格不起作用的第一个条件之外,代码运行良好.假设我已达到140个字符的限制,因此该方法将给我假,用户无法插入更多字符,但在此之后,当我尝试删除某些字符时,文本视图的行为与禁用时相同.

那么问题是如何从textview.text文本视图中删除字符或重新启用文本视图.

iphone uitextview uitextviewdelegate ios

75
推荐指数
8
解决办法
7万
查看次数

UITextView在第一次单击时不显示InputAccessoryView

我使用UITextViewDelegate和添加InputAccessoryViewtextViewDidBeginEditing:

[textView setInputAccessoryView:doneBar];
Run Code Online (Sandbox Code Playgroud)

doneBar不是零,它出现在第二次打开时.

有没有其他人这个问题?

提前致谢.

iphone objective-c uitextview uitextviewdelegate

19
推荐指数
1
解决办法
8935
查看次数

如何在uitextview中的任何光标位置插入文本?

我想实现Code,通过它我可以开始在iphone sdk中的UITextView中的光标的任何位置插入文本

任何的想法?先感谢您..

我引用了这个链接:iPhone SDK:如何创建一个UITextView,在您点按的位置插入文本?

但没有得到它.

iphone uitextview uitextviewdelegate ios

16
推荐指数
4
解决办法
8421
查看次数

iOS4:无法以编程方式滚动到UITextView的底部

在我使用这种方法之前....

//TextView is a UITextView 

[TextView scrollRangeToVisible:NSMakeRange([TextView length], 0)];
Run Code Online (Sandbox Code Playgroud)

...它将以编程方式滚动到UITextView的末尾,但它似乎不适用于iOS 4.0.有没有办法以编程方式滚动到UITextView的末尾而不改变editablility或插入一个点(用户可以点击UITextView并显示键盘)?

另外,我是否需要将文件所有者指定为委托?这有什么不同吗?

iphone uiscrollview uitextview uitextviewdelegate ios4

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

在附件上滚动时,iOS 13.1 UITextView委托方法应该调用InterInteract

我正在使用UITextView委托方法来执行一些自定义工作,例如当用户点击URL或附件时打开应用内浏览器:

func textView(_ textView: UITextView,
                  shouldInteractWith URL: URL,
                  in characterRange: NSRange,
                  interaction: UITextItemInteraction) -> Bool
Run Code Online (Sandbox Code Playgroud)

在iOS 13中,即使用户只是在URL上滚动(这是不期望的),也会调用此委托方法。此行为也适用于图像附件。

现在通过交互调用该dele方法。

* thread #1, queue = 'com.apple.main-thread', stop reason = breakpoint 6.1 7.1
  * frame #0: 0x0000000104a54c5c ProjectS1`PostListViewController.textView(textView=0x00000001090a4600, URL=Foundation.URL @ 0x000000016b5d1200, characterRange=location=161, length=9, interaction=invokeDefaultAction, self=0x0000000109b03990) at PostListViewController.swift:610:9
    frame #1: 0x0000000104a54d70 ProjectS1`@objc PostListViewController.textView(_:shouldInteractWith:in:interaction:) at <compiler-generated>:0
    frame #2: 0x00000001b3293eec UIKitCore`-[UITextView _allowInteraction:forTextInteractableItem:] + 212
    frame #3: 0x00000001b2602160 UIKitCore`-[_UITextInteractableItem _allowInteraction:] + 140
    frame #4: 0x00000001b2601f68 UIKitCore`-[_UITextInteractableItem canInvokeDefaultAction] + 100
    frame #5: 0x00000001b31dd528 UIKitCore`-[_UITextSimpleLinkInteraction _canBeginInteractionSessionForLinkAtPoint:asTap:] + …
Run Code Online (Sandbox Code Playgroud)

uitextview uitextviewdelegate swift ios13

15
推荐指数
2
解决办法
1121
查看次数

更改UITextView文本方向

默认情况下iOS不支持我的语言,所以unicode不是一个选项所以我在UITextView上使用嵌入式真实字体

它在很大程度上起作用,但我的问题就像阿拉伯语,希伯来语我的语言是从右到左书写的.所以我需要改变文本的方向(Not Text Alignment).

我做了一些搜索,他们都谈论NSLocale和东西,但它可以在代码中改变吗?如果我可以把它改成像阿拉伯语/希伯来语那样它我会猜测,但它应该在代码中完成,因为我不想改变手机的语言.

那么我的文本输入选择到底是什么?任何帮助,将不胜感激.

谢谢.

iphone uitextview uitextviewdelegate ios

13
推荐指数
2
解决办法
6683
查看次数

未调用UITextViewDelegate方法(UITableViewCell中的UITextView)

我必须做一些根本错误的事情,我的UITextViewDelegate实现方法没有触发.我有一个UITextView,它是UITableCellView的子视图,并且没有调用委托.

- (void)textViewDidBeginEditing:(UITextView *)textView {

    NSLog(@"textViewDidBeginEditing");
    // never called...
}

- (BOOL)textView:(UITextView *)textView shouldChangeTextInRange:(NSRange)range replacementText:(NSString *)text {

    NSLog(@"shouldChangeTextInRange");  
    // never called... 
}
Run Code Online (Sandbox Code Playgroud)

建议?我不知道它是否重要,但协议在我的@interface声明中明确命名.

@interface DetailViewController () <UITextViewDelgate, ..., ....>
Run Code Online (Sandbox Code Playgroud)

谢谢!

iphone uitextview uitextviewdelegate ios

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

检测UITextView滚动位置

我正在尝试实现一个条款和条件页面的形式,其中"继续"按钮仅在用户滚动到UITextView的底部时启用.到目前为止,我已将我的类设置为UIScrollView委托并已实现以下方法:

- (void)scrollViewDidEndDecelerating:(UIScrollView *)scrollView
{
    NSLog(@"Checking if at bottom of UITextView");
    CGPoint bottomOffset = CGPointMake(0,self.warningTextView.frame.size.height);
    //if ([[self.warningTextView contentOffset] isEqualTO:bottomOffset])
    {
    }    
}
Run Code Online (Sandbox Code Playgroud)

我已经评论了if语句,因为我不确定如何检查UITextView是否位于底部.

cocoa uitextview uitextviewdelegate ios

10
推荐指数
2
解决办法
6250
查看次数

iOS - UITextView + NSUndoManager

我试图在UITextView(我正在构建一个LateX编辑器)中集成撤消/重做功能而没有运气,说实话我真的很困惑这个论点.我不明白这两个操作涉及的步骤,我的意思是我需要两种方法

  • 一个删除最后插入的文本
  • 一个恢复删除的文本

一个疑问是我在哪里获得最后插入的文本?换句话说,我必须注册撤消?

  • 在textViewDidChange中我可以得到整个文本
  • 在textViewShouldChangeTextInRange中我可以插入最后一个char

我知道我所写的并不是最好的解释,但我希望这里有人在过去遇到同样的问题并且可以给我一个提示.基本上,要恢复,我必须将撤消/重做功能添加到textview,可能有两个按钮与这些操作链接.

提前致谢

cocoa-touch uitextview nsundomanager uitextviewdelegate ios

9
推荐指数
1
解决办法
2863
查看次数

在iOS键盘中自定义快速类型建议

我希望有快速类型建议,以便在uitextview中打开键盘时将我自己的某些应用程序级别所需的短语作为建议.

例如,如果用户键入"All" - 在quicktype suggesstion中我想显示"All is well"或"All is is expected".

我可以自定义quicktype建议文本吗?

如果没有,那么可以通过其他方式将这些建议显示在键盘打开时.

uitextview uitextviewdelegate ios ios8

9
推荐指数
1
解决办法
1538
查看次数