Explorar o código

【fix】【APP内反馈】邮箱输入框和问题类型边框效果和高保真不一致

tangchao hai 7 meses
pai
achega
58edb718bb

+ 8 - 2
PDF Office/PDF Master/Class/Common/Category/View/NSTextView+KMExtension.swift

@@ -8,6 +8,12 @@
 import Foundation
 
 @objc extension NSTextView {
+    private class NSTextView_NSTextField_: NSTextField {
+        override func hitTest(_ point: NSPoint) -> NSView? {
+            return nil
+        }
+    }
+    
     var km_placeholderString: String? {
         get {
             return self._placeholderLabel.placeholderString
@@ -39,12 +45,12 @@ import Foundation
                 return label
             }
             
-            let label = NSTextField(labelWithString: "")
+            let label = NSTextView_NSTextField_(wrappingLabelWithString: "")
             self.addSubview(label)
             
             let x = self.textContainerInset.width
             let y = self.textContainerInset.height
-            label.frame = NSMakeRect(x+2, y, NSWidth(self.bounds)-2*x, 20)
+            label.frame = NSMakeRect(x+2, y, NSWidth(self.bounds)-2*x, 40)
             label.autoresizingMask = [.width]
             objc_setAssociatedObject(self, &NSTextView._placeholderLabelKey, label, .OBJC_ASSOCIATION_RETAIN_NONATOMIC)
             return label

+ 17 - 7
PDF Office/PDF Master/Class/Tools/UserFeekback/View/KMUserFbEmailItemView.swift

@@ -24,11 +24,11 @@ class KMUserFbEmailItemView: NSView, NibLoadable {
         
         self.titleLabel.attributedStringValue = attri
         
-        self.box.borderWidth = 0
-//        self.box.borderColor = NSColor(white: 0, alpha: 0.2)
-//        self.box.fillColor = .white
+        self.box.borderWidth = 1
+        self.box.borderColor = NSColor(white: 0, alpha: 0.2)
+        self.box.fillColor = .white
         self.textfiled.drawsBackground = false
-//        self.textfiled.isBordered = false
+        self.textfiled.isBordered = false
 //        self.textfiled.focusRingType = .none
         self.textfiled.placeholderString = NSLocalizedString("Your email", comment: "")
         self.textfiled.delegate = self
@@ -36,9 +36,13 @@ class KMUserFbEmailItemView: NSView, NibLoadable {
         self.textfiled.layer?.cornerRadius = 4
         self.textfiled.layer?.masksToBounds = true
         
-//        self.textfiled.firstResponderHandler = { [weak self] result in
-//            self?.box.borderColor = NSColor(red: 140/255.0, green: 131/255.0, blue: 1.0, alpha: 1.0)
-//        }
+        self.textfiled.firstResponderHandler = { [weak self] result in
+            if result {
+                self?.box.borderColor = NSColor.km_init(hex: "#1770F4")
+            } else {
+                self?.box.borderColor = NSColor(white: 0, alpha: 0.2)
+            }
+        }
         
         
         self.tipLabel.textColor = NSColor.km_init(hex: "#FA1E5D")
@@ -72,6 +76,12 @@ extension KMUserFbEmailItemView: NSTextFieldDelegate {
     func controlTextDidBeginEditing(_ obj: Notification) {
         
     }
+    
+    func controlTextDidEndEditing(_ obj: Notification) {
+        if self.textfiled.isEqual(to: obj.object) {
+            self.box.borderColor = NSColor(white: 0, alpha: 0.2)
+        }
+    }
     func controlTextDidChange(_ obj: Notification) {
         if self.textfiled.isEqual(to: obj.object) {
             self.hiddenTip()

+ 4 - 5
PDF Office/PDF Master/Class/Tools/UserFeekback/View/KMUserFbEmailItemView.xib

@@ -28,7 +28,7 @@
                         <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
                         <subviews>
                             <textField verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="mmN-9S-e4l" customClass="KMTextField" customModule="PDF_Reader_Pro" customModuleProvider="target">
-                                <rect key="frame" x="0.0" y="0.0" width="418" height="18"/>
+                                <rect key="frame" x="6" y="-1" width="406" height="21"/>
                                 <textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" borderStyle="bezel" drawsBackground="YES" id="OPr-CN-yat">
                                     <font key="font" usesAppearanceFont="YES"/>
                                     <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
@@ -37,10 +37,9 @@
                             </textField>
                         </subviews>
                         <constraints>
-                            <constraint firstAttribute="trailing" secondItem="mmN-9S-e4l" secondAttribute="trailing" id="Lik-7D-jyS"/>
-                            <constraint firstItem="mmN-9S-e4l" firstAttribute="top" secondItem="m9Z-kC-ctb" secondAttribute="top" id="ay3-00-F4e"/>
-                            <constraint firstAttribute="bottom" secondItem="mmN-9S-e4l" secondAttribute="bottom" id="gGM-oi-dRq"/>
-                            <constraint firstItem="mmN-9S-e4l" firstAttribute="leading" secondItem="m9Z-kC-ctb" secondAttribute="leading" id="hAe-x8-ryr"/>
+                            <constraint firstAttribute="trailing" secondItem="mmN-9S-e4l" secondAttribute="trailing" constant="6" id="Lik-7D-jyS"/>
+                            <constraint firstItem="mmN-9S-e4l" firstAttribute="centerY" secondItem="m9Z-kC-ctb" secondAttribute="centerY" id="eoY-a9-xcl"/>
+                            <constraint firstItem="mmN-9S-e4l" firstAttribute="leading" secondItem="m9Z-kC-ctb" secondAttribute="leading" constant="6" id="hAe-x8-ryr"/>
                         </constraints>
                     </view>
                     <constraints>

+ 2 - 2
PDF Office/PDF Master/Class/Tools/UserFeekback/View/KMUserFbTypeItemView.xib

@@ -22,8 +22,8 @@
                     </textFieldCell>
                 </textField>
                 <comboBox verticalHuggingPriority="750" translatesAutoresizingMaskIntoConstraints="NO" id="29f-Ge-jzM">
-                    <rect key="frame" x="0.0" y="-4" width="483" height="25"/>
-                    <comboBoxCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" borderStyle="bezel" drawsBackground="YES" completes="NO" numberOfVisibleItems="5" id="Nz9-PX-pKI">
+                    <rect key="frame" x="0.0" y="-4" width="483" height="23"/>
+                    <comboBoxCell key="cell" scrollable="YES" lineBreakMode="clipping" selectable="YES" editable="YES" sendsActionOnEndEditing="YES" completes="NO" numberOfVisibleItems="5" id="Nz9-PX-pKI">
                         <font key="font" metaFont="system"/>
                         <color key="textColor" name="controlTextColor" catalog="System" colorSpace="catalog"/>
                         <color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>

+ 7 - 7
PDF Office/PDF Reader Pro.xcodeproj/project.pbxproj

@@ -11006,18 +11006,18 @@
 		BB031B4A2C47BB070099F7AD /* View */ = {
 			isa = PBXGroup;
 			children = (
-				BB031B4B2C47BB070099F7AD /* KMUserFbEmailItemView.xib */,
 				BB031B4C2C47BB070099F7AD /* KMUserFbDespItemView.swift */,
-				BB031B4D2C47BB070099F7AD /* KMUserFbTypeItemView.swift */,
+				BB031B562C47BB070099F7AD /* KMUserFbDespItemView.xib */,
 				BB031B4E2C47BB070099F7AD /* KMUserFbEmailItemView.swift */,
-				BB031B4F2C47BB070099F7AD /* KMUserListItemCellView.swift */,
-				BB031B502C47BB070099F7AD /* KMUserListItemView.xib */,
+				BB031B4B2C47BB070099F7AD /* KMUserFbEmailItemView.xib */,
 				BB031B512C47BB070099F7AD /* KMUserFbListHeaderItemView.swift */,
-				BB031B522C47BB070099F7AD /* KMUserListItemCellView.xib */,
 				BB031B532C47BB070099F7AD /* KMUserFbListHeaderItemView.xib */,
-				BB031B542C47BB070099F7AD /* KMUserListItemView.swift */,
+				BB031B4D2C47BB070099F7AD /* KMUserFbTypeItemView.swift */,
 				BB031B552C47BB070099F7AD /* KMUserFbTypeItemView.xib */,
-				BB031B562C47BB070099F7AD /* KMUserFbDespItemView.xib */,
+				BB031B4F2C47BB070099F7AD /* KMUserListItemCellView.swift */,
+				BB031B522C47BB070099F7AD /* KMUserListItemCellView.xib */,
+				BB031B542C47BB070099F7AD /* KMUserListItemView.swift */,
+				BB031B502C47BB070099F7AD /* KMUserListItemView.xib */,
 			);
 			path = View;
 			sourceTree = "<group>";