|
@@ -82,7 +82,7 @@ class PublishViewController: BaseViewController {
|
|
|
private lazy var segmentedView: JXSegmentedView = {
|
|
|
let segmentedView = JXSegmentedView()
|
|
|
segmentedView.delegate = self
|
|
|
- segmentedView.dataSource = segmentedDataSource
|
|
|
+ segmentedView.dataSource = segmentedDataSourceAlbum
|
|
|
segmentedView.indicators = [indicator]
|
|
|
segmentedView.contentScrollView = listContainerView.scrollView
|
|
|
segmentedView.selectItemAt(index: 0)
|
|
@@ -91,7 +91,7 @@ class PublishViewController: BaseViewController {
|
|
|
}()
|
|
|
|
|
|
//2.初始化dataSource
|
|
|
- private lazy var segmentedDataSource: JXSegmentedTitleDataSource = {
|
|
|
+ private lazy var segmentedDataSourceAlbum: JXSegmentedTitleDataSource = {
|
|
|
let segmentedDataSource = JXSegmentedTitleDataSource()
|
|
|
segmentedDataSource.isTitleColorGradientEnabled = true
|
|
|
segmentedDataSource.isItemSpacingAverageEnabled = true
|
|
@@ -106,6 +106,21 @@ class PublishViewController: BaseViewController {
|
|
|
|
|
|
return segmentedDataSource
|
|
|
}()
|
|
|
+ private lazy var segmentedDataSourceVideo: JXSegmentedTitleDataSource = {
|
|
|
+ let segmentedDataSource = JXSegmentedTitleDataSource()
|
|
|
+ segmentedDataSource.isTitleColorGradientEnabled = true
|
|
|
+ segmentedDataSource.isItemSpacingAverageEnabled = true
|
|
|
+ segmentedDataSource.isTitleZoomEnabled = true
|
|
|
+ segmentedDataSource.titleNormalColor = kffffffColor
|
|
|
+ segmentedDataSource.titleSelectedColor = kffffffColor
|
|
|
+ segmentedDataSource.titleNormalFont = kRegularFont14!
|
|
|
+ segmentedDataSource.titleSelectedFont = kBoldFont22
|
|
|
+ segmentedDataSource.titles = ["相册","拍视频","拍照"]
|
|
|
+ //reloadData(selectedIndex:)方法一定要调用,方法内部会刷新数据源数组
|
|
|
+ segmentedDataSource.reloadData(selectedIndex: 0)
|
|
|
+
|
|
|
+ return segmentedDataSource
|
|
|
+ }()
|
|
|
|
|
|
//3.初始化指示器indicator
|
|
|
private lazy var indicator: JXSegmentedIndicatorRainbowLineView = {
|
|
@@ -113,6 +128,7 @@ class PublishViewController: BaseViewController {
|
|
|
indicator.indicatorColors = [k62CC74Color,.white,.white]
|
|
|
indicator.indicatorHeight = 3
|
|
|
indicator.indicatorWidth = 20
|
|
|
+ indicator.verticalOffset = 8
|
|
|
return indicator
|
|
|
}()
|
|
|
|
|
@@ -134,10 +150,19 @@ extension PublishViewController : JXSegmentedViewDelegate {
|
|
|
switch index {
|
|
|
case 0:
|
|
|
self.segmentedView.backgroundColor = .white
|
|
|
+ self.segmentedView.dataSource = segmentedDataSourceAlbum
|
|
|
+ self.segmentedView.reloadData()
|
|
|
+ statusBarStyle = .default
|
|
|
case 1:
|
|
|
self.segmentedView.backgroundColor = .clear
|
|
|
+ self.segmentedView.dataSource = segmentedDataSourceVideo
|
|
|
+ self.segmentedView.reloadData()
|
|
|
+ statusBarStyle = .lightContent
|
|
|
case 2:
|
|
|
self.segmentedView.backgroundColor = .clear
|
|
|
+ self.segmentedView.dataSource = segmentedDataSourceVideo
|
|
|
+ self.segmentedView.reloadData()
|
|
|
+ statusBarStyle = .lightContent
|
|
|
default:
|
|
|
break
|
|
|
}
|
|
@@ -149,29 +174,9 @@ extension PublishViewController : JXSegmentedViewDelegate {
|
|
|
listContainerView.didClickSelectedItem(at: index)
|
|
|
}
|
|
|
|
|
|
- // 滚动选中的情况才会调用该方法
|
|
|
+ // 滚动选中的情况才会调用该方法(未支持滚动选中)
|
|
|
func segmentedView(_ segmentedView: JXSegmentedView, didScrollSelectedItemAt index: Int) {
|
|
|
- switch index {
|
|
|
- case 0:
|
|
|
- let segmentedTitleItemModel = JXSegmentedTitleItemModel()
|
|
|
-
|
|
|
-
|
|
|
- segmentedDataSource.refreshItemModel(segmentedView, currentSelectedItemModel: segmentedDataSource.dataSource[index], willSelectedItemModel: segmentedTitleItemModel, selectedType: JXSegmentedViewItemSelectedType.scroll)
|
|
|
-
|
|
|
- case 1:
|
|
|
-
|
|
|
- let segmentedTitleItemModel = JXSegmentedTitleItemModel()
|
|
|
-
|
|
|
- segmentedDataSource.refreshItemModel(segmentedView, currentSelectedItemModel: segmentedDataSource.dataSource[index], willSelectedItemModel: segmentedTitleItemModel, selectedType: JXSegmentedViewItemSelectedType.scroll)
|
|
|
- case 2:
|
|
|
-
|
|
|
- let segmentedTitleItemModel = JXSegmentedTitleItemModel()
|
|
|
-
|
|
|
- segmentedDataSource.refreshItemModel(segmentedView, currentSelectedItemModel: segmentedDataSource.dataSource[index], willSelectedItemModel: segmentedTitleItemModel, selectedType: JXSegmentedViewItemSelectedType.scroll)
|
|
|
- default:
|
|
|
- break
|
|
|
- }
|
|
|
-
|
|
|
+ print("\n------滚动选中\(index)")
|
|
|
}
|
|
|
|
|
|
// 正在滚动中的回调
|