|
@@ -12,6 +12,7 @@ import JXSegmentedView
|
|
|
class CommunityFollowViewController: UIViewController {
|
|
|
|
|
|
var cellHeightsDictionary = Dictionary<IndexPath, Any>()
|
|
|
+ var communityFollowDataModels = Array<CommunityFollowDataModel>()
|
|
|
|
|
|
override func viewDidLoad() {
|
|
|
super.viewDidLoad()
|
|
@@ -23,7 +24,6 @@ class CommunityFollowViewController: UIViewController {
|
|
|
func setupViews() {
|
|
|
view.backgroundColor = kf7f8faColor
|
|
|
view.addSubview(tableView)
|
|
|
- tableView.tableHeaderView = followTableHeaderView
|
|
|
}
|
|
|
|
|
|
func setupLayouts() {
|
|
@@ -31,17 +31,6 @@ class CommunityFollowViewController: UIViewController {
|
|
|
make.top.left.right.equalToSuperview()
|
|
|
make.height.equalTo(kScreenHeight-48-kNavBarTotalHeight-kTabBarTotalHeight)
|
|
|
}
|
|
|
- tableView.reloadData()
|
|
|
- }
|
|
|
-
|
|
|
- func setupData() {
|
|
|
- //下拉刷新
|
|
|
- tableView.addHeaderWithHeader(withBeginRefresh: true, animation: false) { (page) in
|
|
|
-
|
|
|
- }
|
|
|
- tableView.addFooterWithWithHeader(withAutomaticallyRefresh: false) { (page) in
|
|
|
-
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
private lazy var tableView: UITableView = {
|
|
@@ -58,6 +47,18 @@ class CommunityFollowViewController: UIViewController {
|
|
|
return followTableHeaderView
|
|
|
}()
|
|
|
|
|
|
+ func setupData() {
|
|
|
+ //下拉刷新
|
|
|
+ tableView.addHeaderWithHeader(withBeginRefresh: true, animation: false) {
|
|
|
+ [weak self] (page) in
|
|
|
+ self?.communityFollowFeedApi(page: page)
|
|
|
+ }
|
|
|
+ tableView.addFooterWithWithHeader(withAutomaticallyRefresh: false) {
|
|
|
+ [weak self] (page) in
|
|
|
+ self?.communityFollowFeedApi(page: page)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
/// 关注接口
|
|
|
func followData(indexPath: IndexPath) {
|
|
|
tableView.reloadRows(at: [indexPath], with: UITableView.RowAnimation.none)
|
|
@@ -65,9 +66,38 @@ class CommunityFollowViewController: UIViewController {
|
|
|
|
|
|
}
|
|
|
|
|
|
+extension CommunityFollowViewController {
|
|
|
+
|
|
|
+ /// 关注feed流
|
|
|
+ ///
|
|
|
+ /// - Parameter page: 分页
|
|
|
+ func communityFollowFeedApi(page:Int) {
|
|
|
+ SwiftMoyaNetWorkServiceCommunity.shared().communityFollowFeedApi {
|
|
|
+ [weak self] (communityFollowFeedModel) -> (Void) in
|
|
|
+ let communityFollowFeedModel = communityFollowFeedModel as? CommunityFollowFeedModel
|
|
|
+ if communityFollowFeedModel?.pagination?.currentPage ?? 1 <= communityFollowFeedModel?.pagination?.totalPages ?? 1 {
|
|
|
+ if communityFollowFeedModel?.pagination?.currentPage == 1{
|
|
|
+ self?.communityFollowDataModels.removeAll()
|
|
|
+ }
|
|
|
+ self?.communityFollowDataModels = (self?.communityFollowDataModels)! + (communityFollowFeedModel?.data!)!
|
|
|
+ if (self?.communityFollowDataModels.isEmpty)! {
|
|
|
+ self?.tableView.tableHeaderView = self?.followTableHeaderView
|
|
|
+ }
|
|
|
+ self?.tableView.reloadData()
|
|
|
+ if self?.communityFollowDataModels.count ?? 0 >= communityFollowFeedModel?.pagination?.total ?? 0 {
|
|
|
+ self?.tableView.isHiddenFooter(true)
|
|
|
+ }
|
|
|
+ }else {
|
|
|
+ self?.tableView.endFooterNoMoreData()
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSource {
|
|
|
func numberOfSections(in tableView: UITableView) -> Int {
|
|
|
return 23
|
|
|
+// return communityFollowDataModels.isEmpty ? 0 : communityFollowDataModels.count
|
|
|
}
|
|
|
|
|
|
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
|
|
@@ -76,6 +106,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
}else {
|
|
|
return 1
|
|
|
}
|
|
|
+// return 1
|
|
|
}
|
|
|
|
|
|
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
|
|
@@ -146,7 +177,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 100
|
|
|
cardContentPicVideoModel.height = 200
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -198,7 +229,8 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 100
|
|
|
cardContentPicVideoModel.height = 300
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
+
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -250,8 +282,9 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 200
|
|
|
cardContentPicVideoModel.height = 200
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+
|
|
|
return cell
|
|
|
case 2:
|
|
|
let cell = CardContentTitleTableViewCell.cellWith(tableView: tableView, indexPath: indexPath)
|
|
@@ -303,7 +336,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 200
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -354,7 +387,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -405,7 +438,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 2
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -456,7 +489,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 3
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -507,7 +540,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 4
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -558,7 +591,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 5
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -609,7 +642,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 6
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -660,7 +693,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 7
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -711,7 +744,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 8
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -762,7 +795,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 9
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -813,7 +846,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 100
|
|
|
cardContentPicVideoModel.height = 300
|
|
|
- cardContentPicVideoModel.picAndVideo = 1
|
|
|
+ cardContentPicVideoModel.postType = .video
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -864,7 +897,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 1
|
|
|
+ cardContentPicVideoModel.postType = .video
|
|
|
cell.cardContentPicVideoModel = cardContentPicVideoModel
|
|
|
return cell
|
|
|
case 2:
|
|
@@ -934,7 +967,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 100
|
|
|
cardContentPicVideoModel.height = 200
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -956,7 +989,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 100
|
|
|
cardContentPicVideoModel.height = 300
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -978,7 +1011,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 200
|
|
|
cardContentPicVideoModel.height = 200
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1000,7 +1033,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 200
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1022,7 +1055,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1044,7 +1077,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 2
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1066,7 +1099,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 3
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1088,7 +1121,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 4
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1110,7 +1143,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 5
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1132,7 +1165,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 6
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1154,7 +1187,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 7
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1176,7 +1209,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 8
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1198,7 +1231,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 9
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 0
|
|
|
+ cardContentPicVideoModel.postType = .image
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1220,7 +1253,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 9
|
|
|
cardContentPicVideoModel.width = 100
|
|
|
cardContentPicVideoModel.height = 300
|
|
|
- cardContentPicVideoModel.picAndVideo = 1
|
|
|
+ cardContentPicVideoModel.postType = .video
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|
|
@@ -1242,7 +1275,7 @@ extension CommunityFollowViewController : UITableViewDelegate,UITableViewDataSou
|
|
|
cardContentPicVideoModel.number = 1
|
|
|
cardContentPicVideoModel.width = 300
|
|
|
cardContentPicVideoModel.height = 100
|
|
|
- cardContentPicVideoModel.picAndVideo = 1
|
|
|
+ cardContentPicVideoModel.postType = .video
|
|
|
return cardContentPicVideoModel.collectionViewHeight() + 20
|
|
|
case 2:
|
|
|
return UITableView.automaticDimension
|