Browse Source

增加了一些方法

100Years 1 week ago
parent
commit
8c7304d0bf

+ 3 - 1
TSSmalCoacopods/Classes/BaseClass/TSBaseNavigationBarView.swift

@@ -130,8 +130,10 @@ open class TSNormalNavigationBarView: TSBaseNavContentBarView {
     }
 
     // MARK: - Helper Methods
-    public func setTitleName(_ name: String) -> UIButton {
+    public func setTitleName(_ name: String,image:UIImage? = nil,space:CGFloat = 0,imageRight:Bool = false) -> UIButton {
         titleNavBtn.setTitle(name, for: .normal)
+        titleNavBtn.semanticContentAttribute = .forceRightToLeft // 确保布局方向
+        titleNavBtn.setContentImageSpace(spacing: space)
         return titleNavBtn
     }
 

+ 1 - 1
TSSmalCoacopods/Classes/BaseClass/TSBasePageVC.swift

@@ -18,7 +18,6 @@ open class TSBasePageVC: UIPageViewController,UIPageViewControllerDataSource {
     open var currentIndex: Int = 0
     
     // MARK: - Initialization
-    
     public convenience init(dataItems: [Any], startIndex: Int = 0) {
         // 完全依赖系统自动处理 RTL 方向
         self.init(transitionStyle: .scroll, navigationOrientation: .horizontal)
@@ -40,6 +39,7 @@ open class TSBasePageVC: UIPageViewController,UIPageViewControllerDataSource {
     // MARK: - Setup
     
     private func setupPageViewController() {
+
         dataSource = self
         delegate = self
         

+ 12 - 4
TSSmalCoacopods/Classes/BaseClass/TSBaseVC.swift

@@ -137,15 +137,23 @@ open class TSBaseVC: UIViewController {
 
     // MARK: - 导航栏方法
 
-    public func setTitleText(_ title: String) {
+    public func setTitleText(_ title: String,image:UIImage? = nil,spacing:CGFloat = 0,imageRight:Bool = false) -> UIButton {
         addNormalNavBarView()
-       _ = normalNavBarView.setTitleName(NSLocalizedString(title, comment: ""))
+        let titleNavBtn = normalNavBarView.setTitleName(NSLocalizedString(title, comment: ""))
+        UIButton.createButton()
+        if let image = image {
+            titleNavBtn.setImage(image, for: .normal)
+        }
+        titleNavBtn.semanticContentAttribute = imageRight ? .forceRightToLeft : .forceLeftToRight // 确保布局方向
+        titleNavBtn.contentEdgeInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: spacing) // 只调整 title 的 left
+        titleNavBtn.imageEdgeInsets = UIEdgeInsets(top: 0, left: 0, bottom: 0, right: -spacing) // 只调整 image 的 right
+        return titleNavBtn
     }
-
+    
     public func setPageTitle(_ title: String) {
         let pageTitle = title
         let backTitle = " "
-        setTitleText(pageTitle)
+        _ = setTitleText(pageTitle)
         _ = setNavigationItem(backTitle, imageName: "navi_back_white", direction: .left, action: #selector(navBarClickLeftAction))
     }
 

+ 1 - 0
TSSmalCoacopods/Classes/Ex/UIView+Ex.swift

@@ -207,6 +207,7 @@ public extension UIView {
         if #available(iOS 11.0, *) {
             layer.cornerRadius = radius
             layer.maskedCorners = corner.mask
+            self.clipsToBounds = true
         } else {
             let path = UIBezierPath(
                 roundedRect: bounds,