Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.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
Ios 在textview中将滑块值设置为当前读取位置_Ios_Swift_Uitextview - Fatal编程技术网

Ios 在textview中将滑块值设置为当前读取位置

Ios 在textview中将滑块值设置为当前读取位置,ios,swift,uitextview,Ios,Swift,Uitextview,我有一个垂直放置在文本视图旁边的滑块。当前,如果我抓住滑块并向下拉,它会在textView中向下滚动文本。但是,在textview中读取文本不会更新滑块上拇指的位置。如何执行此操作?您必须查看UITextView的contentOffset更改。UITextView是UIScrollView的一个子类,因此可以使用UIScrollViewDelegate方法。滚动textView时,将调用scrollViewDidScroll方法。基于当前contentOffset,您可以相应地更新滑块 cla

我有一个垂直放置在文本视图旁边的滑块。当前,如果我抓住滑块并向下拉,它会在textView中向下滚动文本。但是,在textview中读取文本不会更新滑块上拇指的位置。如何执行此操作?

您必须查看UITextView的contentOffset更改。UITextView是UIScrollView的一个子类,因此可以使用UIScrollViewDelegate方法。滚动textView时,将调用scrollViewDidScroll方法。基于当前contentOffset,您可以相应地更新滑块

class ViewController: UIViewController {
    @IBOutlet weak var textView: UITextView!

    override func viewDidLoad() {
        super.viewDidLoad()

        textView.delegate = self
    }
}

extension ViewController: UITextViewDelegate { }

extension ViewController: UIScrollViewDelegate {
    func scrollViewDidScroll(_ scrollView: UIScrollView) {
        if scrollView === textView {
            // update your slider based on scrollView.contentOffset
        }
    }
}

请确保滑块的UserInteractionEnabled为true。您可以在情节提要的属性检查器中检查它。 要更新textView阅读,请使用以下代码:- 设置文本的位置:-

  slider.maximumValue = Float(text.contentSize.height) - Float(text.frame.size.height)
和“生成滑块”的值已更改iAction:-

  @IBAction func actionSlider(_ sender: UISlider) {
        txt.contentOffset = CGPoint.init(x: 0, y: Int(sender.value))
    }

请,你能和我们分享代码吗?当你拉下滑块时,你能给我们展示你用来滚动文本视图的代码吗。嘿,伙计们,看看下面南希·马丹的答案。按钮中的代码将使用滑块移动textview。Shota的代码解决了我的问题。@bhealth==运算符返回一个布尔值,指示两个引用是否指向同一个对象实例。更多关于