Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
禁用UITextView中的滚动,同时避免在ios的当前位置跳转到顶部和文本不可见_Ios_Swift_Cocoa_Cocoa Touch_Uiscrollview - Fatal编程技术网

禁用UITextView中的滚动,同时避免在ios的当前位置跳转到顶部和文本不可见

禁用UITextView中的滚动,同时避免在ios的当前位置跳转到顶部和文本不可见,ios,swift,cocoa,cocoa-touch,uiscrollview,Ios,Swift,Cocoa,Cocoa Touch,Uiscrollview,我尝试了很多方法,但都没有找到解决办法。任何想法都可以帮助我评估这一点。我制作了一个全视图DrawBoard类,该类继承自UITextView类。当视图控制器上的开关打开时,用户可以键入和滚动,当它关闭时,用户可以在DrawBoard上绘制 @IBAction func changeSwitch(sender: UISwitch) { if sender.on{ drawBoard.setNeedsDisplay() drawBoa

我尝试了很多方法,但都没有找到解决办法。任何想法都可以帮助我评估这一点。我制作了一个全视图DrawBoard类,该类继承自UITextView类。当视图控制器上的开关打开时,用户可以键入和滚动,当它关闭时,用户可以在DrawBoard上绘制

@IBAction func changeSwitch(sender: UISwitch) {
        if sender.on{
            drawBoard.setNeedsDisplay()
            drawBoard.scrollEnabled = true
            drawBoard.editable = true
            drawBoard.selectable = true
            drawBoard.switchBool = false

        }else if !sender.on {
            drawBoard.switchBool=true
            let a:CGPoint = drawBoard.contentOffset
            drawBoard.scrollEnabled = false
            drawBoard.setContentOffset(a, animated: false)
            drawBoard.editable = false
            drawBoard.selectable=false
        }

    }
它更新了滚动,但是
scrolldenabled=false
只保存文本视图第一页范围内的文本,以便自动滚动到顶部并禁用滚动。然后,当我设置contentoffset时,背景的可绘制视图可见,并在文本视图的正确位置绘制。但是,应该位于其顶部的文本不可见。只有当我不在第一页的范围内时,切换按钮被设置为关闭时,才会发生这种情况。如何使该范围内的文本可见


很抱歉,如果这是一个非常简单的问题,我是编程新手,为此花了很长时间。谢谢。

您必须更新UIScrollView的内容大小

像这样:

scrollView.contentSize = CGSize(width: 100, height: 100)

“内容大小”决定可滚动内容的大小,如果它不够大,无法覆盖新的视图,您将无法在滚动视图中看到它。

我没有滚动视图,我只有一个自定义的UITextView类绘图板,我不想限制它的高度。我遇到的问题是scrollEnabled=false,因为它会自动将UITextView的滚动条反弹到顶部。ScrollEnabled会妨碍setContentOffSet(在上面的代码中使用),并且CGA点下方的文本不会显示在textView中,尽管内容位于正确的位置。我希望问题现在更清楚一点。谢谢你的回复。如果存在误解,您是否建议我将上述问题与此澄清一起编辑?