Closed iamjjh closed 4 years ago
open override func refreshItemModel(_ segmentedView: JXSegmentedView, leftItemModel: JXSegmentedBaseItemModel, rightItemModel: JXSegmentedBaseItemModel, percent: CGFloat) { super.refreshItemModel(segmentedView, leftItemModel: leftItemModel, rightItemModel: rightItemModel, percent: percent) guard let leftModel = leftItemModel as? DDSegmentedTitleImageItemModel, let rightModel = rightItemModel as? DDSegmentedTitleImageItemModel else { return } if isImageZoomEnabled && isItemTransitionEnabled { leftModel.imageCurrentZoomScale = JXSegmentedViewTool.interpolate(from: imageSelectedZoomScale, to: 1, percent: CGFloat(percent)) rightModel.imageCurrentZoomScale = JXSegmentedViewTool.interpolate(from: 1, to: imageSelectedZoomScale, percent: CGFloat(percent)) } // 提前定位到中心 let willScrollIndex = percent > 0.5 ? rightItemModel.index : leftItemModel.index segmentedView.collectionView.scrollToItem(at: IndexPath(item: willScrollIndex, section: 0), at: .centeredHorizontally, animated: true) }
默认效果感觉定位到中心的动画和整个滚动的动画是割裂的,希望达到类似类似腾讯视频的效果。暂时是这么处理的,请问有更好的方法吗?
默认效果感觉定位到中心的动画和整个滚动的动画是割裂的,希望达到类似类似腾讯视频的效果。暂时是这么处理的,请问有更好的方法吗?