|
@@ -18,10 +18,43 @@ class PhotoVideoListController: BFBaseViewController {
|
|
|
|
|
|
var chosedAsset:PHAsset?
|
|
|
|
|
|
+ lazy var albumController: BFPhotoAlbumController = {
|
|
|
+ let albumController = BFPhotoAlbumController()
|
|
|
+ albumController.mediaType = .video
|
|
|
+ albumController.isTopShow = true
|
|
|
+ albumController.categoryH = cDefaultMargin * 40
|
|
|
+ addChildViewController(albumController)
|
|
|
+ view.insertSubview(albumController.view, belowSubview: navHeadImageView!)
|
|
|
+ albumController.updateViewFrame(frame: CGRect(x: 0, y: navHeadImageView?.frame.maxY ?? cDevice_iPhoneNavBarAndStatusBarHei, width: view.frame.width, height: view.frame.height - (navHeadImageView?.frame.maxY ?? cDevice_iPhoneNavBarAndStatusBarHei)))
|
|
|
+ albumController.selectedHandle = { [weak self] seletedData in
|
|
|
+ if seletedData != nil {
|
|
|
+ self?.albumSelectedHandle(seletedData: seletedData)
|
|
|
+ } else {
|
|
|
+ self?.changeCollecBtn.isSelected = false
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return albumController
|
|
|
+ }()
|
|
|
+
|
|
|
+ lazy var changeCollecBtn: UIButton = {
|
|
|
+ let changeCollecBtn = UIButton(frame: CGRect(x: cDefaultMargin * 5, y: cDevice_iPhoneStatusBarHei, width: cScreenWidth - cDefaultMargin * 10, height: cDefaultMargin * 4))
|
|
|
+ changeCollecBtn.titleLabel?.lineBreakMode = .byTruncatingTail
|
|
|
+ changeCollecBtn.tintColor = BFConfig.shared.styleTitleColor
|
|
|
+ changeCollecBtn.setTitle("我的相册", for: .normal)
|
|
|
+ changeCollecBtn.setImage(UIImage.moduleImage(named: "icon_selected_down", moduleName: "BFFramework",isAssets: false)?.withRenderingMode(.alwaysTemplate), for: .normal)
|
|
|
+ changeCollecBtn.setImage(UIImage.moduleImage(named: "icon_selected_up", moduleName: "BFFramework",isAssets: false)?.withRenderingMode(.alwaysTemplate), for: .selected)
|
|
|
+ changeCollecBtn.setTitleColor(BFConfig.shared.styleTitleColor, for: .normal)
|
|
|
+ changeCollecBtn.titleLabel?.font = UIFont.systemFont(ofSize: 18, weight: .medium)
|
|
|
+ changeCollecBtn.tag = 1
|
|
|
+ changeCollecBtn.imagePosition(at: PQButtonImageEdgeInsetsStyle.right, space: cDefaultMargin / 2)
|
|
|
+ changeCollecBtn.addTarget(self, action: #selector(btnClick(sender:)), for: .touchUpInside)
|
|
|
+ return changeCollecBtn
|
|
|
+ }()
|
|
|
+
|
|
|
lazy var photoMaterialVc: BFPhotosMaterialController = {
|
|
|
let vc = BFPhotosMaterialController()
|
|
|
- vc.view.frame = CGRect(x: 0, y: cDevice_iPhoneNavBarAndStatusBarHei, width: cScreenWidth, height: cScreenHeigth - cDevice_iPhoneNavBarAndStatusBarHei - cDevice_iPhoneTabBarHei)
|
|
|
vc.view.backgroundColor = .black
|
|
|
+ vc.updateFrame(newFrame: CGRect(x: 0, y: cDevice_iPhoneNavBarAndStatusBarHei, width: cScreenWidth, height: cScreenHeigth - cDevice_iPhoneNavBarAndStatusBarHei - cDevice_iPhoneTabBarHei))
|
|
|
vc.selectedMaterialHandle = { [weak self] currentMaterialData, selectedPhotoData, _, _ in
|
|
|
if currentMaterialData?.isSelected ?? false{
|
|
|
self?.chosedAsset = currentMaterialData
|
|
@@ -48,7 +81,7 @@ class PhotoVideoListController: BFBaseViewController {
|
|
|
|
|
|
leftButton(image: nil, imageName: nil, tintColor: .white)
|
|
|
navHeadImageView?.backgroundColor = .black
|
|
|
-
|
|
|
+ navHeadImageView?.addSubview(changeCollecBtn)
|
|
|
addChildViewController(photoMaterialVc)
|
|
|
view.addSubview(photoMaterialVc.view)
|
|
|
|
|
@@ -66,6 +99,35 @@ class PhotoVideoListController: BFBaseViewController {
|
|
|
|
|
|
}
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ @objc func btnClick(sender: UIButton?) {
|
|
|
+ switch sender?.tag {
|
|
|
+ case 1:
|
|
|
+ sender?.isSelected = !(sender?.isSelected ?? false)
|
|
|
+ if sender?.isSelected ?? false {
|
|
|
+ albumController.showCategoryView()
|
|
|
+ } else {
|
|
|
+ albumController.dismissCategoryView()
|
|
|
+ }
|
|
|
+ default:
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ func albumSelectedHandle(seletedData: PHAsset?) {
|
|
|
+ changeCollecBtn.isSelected = false
|
|
|
+ if seletedData != nil {
|
|
|
+ changeCollecBtn.setTitle(seletedData?.title ?? "全部", for: .normal)
|
|
|
+ changeCollecBtn.imagePosition(at: PQButtonImageEdgeInsetsStyle.right, space: cDefaultMargin / 2)
|
|
|
+ photoMaterialVc.assetCollection = seletedData?.assetCollection
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
override func rightBtnClick(sender _: UIButton) {
|
|
|
if let asset = self.chosedAsset{
|
|
|
let vc = IntroduceController()
|