繁体   English   中英

使用Swift 3在tableVIew中进行单元格自动选择

[英]Cell automatic selection in tableVIew using swift 3

我有一张约有40条记录的表。 我想始终选择位于屏幕中央某个位置的单元格。 每当我从表中进行scrool时,它都应将所选行更改为当前位于中心的行。 它将与选取器相同,但是该行具有多个图像和标签,因此将无法制作选取器。

是否可以做类似的事情?

使用UIPickerView可以做到这一点 ,而且听起来确实是您要重新创建的东西。

您需要做的就是替换UIPickerView中的视图。 通常不需要使用两种方法-需要指定高度,并且需要定义要用于行的视图

func pickerView(pickerView: UIPickerView, rowHeightForComponent component: Int) -> CGFloat 
{
    return self.myRowHeight
}

func pickerView(pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusingView view: UIView!) -> UIView 
{
    var myView = UIView(frame: CGRectMake(0, 0, pickerView.bounds.width, self.myRowHeight))
    // define & add whatever controls you need   
    myView.addSubview(myControl1)
    myView.addSubview(myControl2)

    return myView
}

是的,这是可能的,但听起来像是一个不良的用户界面。

UITableView是UIScrollview的子类。 您可以将自己设置为滚动视图委托,并响应诸如scrollViewDidScroll(_:)和/或scrollViewDidEndDecelerating(_:)类的委托调用,更改选择。

但是,我认为如果使用选择器视图,将会有更好的用户体验。 您可以设置选择器视图以对每个索引使用一个视图,因此您应该能够提供一个包含多个图像视图和标签作为子视图的自定义视图。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM