From 3eb3a863760334bbf37b465235182e13ff335e8e Mon Sep 17 00:00:00 2001 From: CodeST <694468528@qq.com> Date: Mon, 10 Nov 2025 19:51:23 +0800 Subject: [PATCH] 2 --- .../black_right_arrow.imageset/Contents.json | 22 ++++++ .../black_right_arrow@2x.png | Bin 0 -> 629 bytes .../black_right_arrow@3x.png | Bin 0 -> 1112 bytes .../My/my_bg_icon.imageset/Contents.json | 23 ++++++ .../My/my_bg_icon.imageset/my_bg_icon 1.png | Bin 0 -> 15315 bytes .../My/my_bg_icon.imageset/my_bg_icon 2.png | Bin 0 -> 15315 bytes .../My/my_bg_icon.imageset/my_bg_icon.png | Bin 0 -> 15315 bytes keyBoard/Class/Home/V/HomeRankCardCell.m | 2 +- keyBoard/Class/Me/V/KBMyHeaderView.h | 7 +- keyBoard/Class/Me/V/KBMyHeaderView.m | 68 ++++++++++++++++-- keyBoard/Class/Me/V/KBMyListCell.m | 10 +-- keyBoard/Class/Me/V/KBSkinBottomActionView.m | 2 +- keyBoard/Class/Me/V/KBSkinDetailHeaderCell.m | 2 +- keyBoard/Class/Me/V/MySkinCell.m | 2 +- keyBoard/Class/Me/VC/MySkinVC.m | 4 +- keyBoard/Class/Shop/VC/KBShopVC.m | 2 +- keyBoard/KeyBoardPrefixHeader.pch | 2 +- 17 files changed, 125 insertions(+), 21 deletions(-) create mode 100644 keyBoard/Assets.xcassets/My/black_right_arrow.imageset/Contents.json create mode 100644 keyBoard/Assets.xcassets/My/black_right_arrow.imageset/black_right_arrow@2x.png create mode 100644 keyBoard/Assets.xcassets/My/black_right_arrow.imageset/black_right_arrow@3x.png create mode 100644 keyBoard/Assets.xcassets/My/my_bg_icon.imageset/Contents.json create mode 100644 keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon 1.png create mode 100644 keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon 2.png create mode 100644 keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon.png diff --git a/keyBoard/Assets.xcassets/My/black_right_arrow.imageset/Contents.json b/keyBoard/Assets.xcassets/My/black_right_arrow.imageset/Contents.json new file mode 100644 index 0000000..2d0b67b --- /dev/null +++ b/keyBoard/Assets.xcassets/My/black_right_arrow.imageset/Contents.json @@ -0,0 +1,22 @@ +{ + "images" : [ + { + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "black_right_arrow@2x.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "black_right_arrow@3x.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/keyBoard/Assets.xcassets/My/black_right_arrow.imageset/black_right_arrow@2x.png b/keyBoard/Assets.xcassets/My/black_right_arrow.imageset/black_right_arrow@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..5287f08c320d8e7d1ab34d1a7aeb5aaf8ac31908 GIT binary patch literal 629 zcmV-*0*d{KP)1aYnNkIpQM4?1Nhz1EdkSLP|$w(A5 zl4+3dmv}N`c{gk4e7Qt9?XQ`goBeL~G`mW-^k&>L6v{O9|2V#K3r_JU z+q2Jr=wrAB5f><`bo6!I3gbn-l9zw__5lHP#CJl#29DrcS=boFi}w?>D@5>>eLons z$gobmUSIIRIgSGXbYYn7Wh-3S4+tKH-K<`yZowkdpx`+IanfKg*d+yRhIM)B2O``t zq_;Q_v2w>0NHXj%+hf=g!%~?$ab@keY2LZ{tUU&jgfWa@nTU2}?uD=>?c(QwlM9mf zwr_X%=dZFqWci^0pT;fy#0Mshn%G=pf7>qyFk0ox_NNo@1y^=Ij1__;G3}+F3E;8# zp%mbIeNEqWG3A^h%iDa-+gzW?sVRlqjjN5@5-$ak#H62W&|TiXjgr$%(gXDiMgtgG|#rSA0cC(1}ky-$w^+K5IKJ zHqR<~ArS7^b@81XB1kF$o$x zs27#Rk9#Bs(Tk!Y7%-4z$8|HA*;#{-#F=rryZl!t8D^$m&(24hs^0frRlQ$V?VH!H zjazUR@6WscLdB-Jyn7{=+g7A|aGBPv)_WxUA?9jABO*lG#YuhS7Tg^XSN= z8|#9>Q2@N`Q}8(2YtV?`L6S)ENZr5rH0`2f#G%hXFD!Je{#jjSmgmqZL2Z(jz?^bx z?tGz8$k-fgV^)|tu9mKSONNi3eH|JRCfdTxCt5*sAB?f{z}A+2PTtk!t4qRk2;MiK z7Ll#Q{O0tuyT@XT4E2MB&gD}1a|%Q={3jfU-X?selkT)T8#Q&0YzR~Lq?7&_f8U2% zcNvWDV5YN^Gn2c~j+KF6rBbQU%>4H*5idboWWRPgfpdB)Kef|tCK?E)!Rr^-Z!|N_ zgIM|>px=N-MP#=jKAX*Fw?~abz%*Ea#y5*3^ac6>)F!hInKSN#?nJNA^bTy)UtL|j z?y>(G6a5nB%VhRYla9~K%xtBOYiO9p>W^Lwzkp@`llG%3Nj%Jp4Zm?>;-QHxckLs= zG#J0Z-~7Pe9}lDq6VIm`ske(oN^8u>Fb%G(R4zy$N6@|mwTS56`Fy=Kb!Zp%(Xn7U zdwHe&JyWoN_Bzxin~>qrYk#|QW5aazCi}l)h1RugQz4oprrEJ!`TWFGN|Ik;vIlG+ zjCrsvnU*;|7ED1NB~N0)_-%^mYrG$i=}%^4ST>v8>{04dB7TC163~d?jqw?KX1-FY zgzrTY@fcu0GfHHfZ{Yd})CRg;I?o)|jNlW>&@ctvDc!^247OWG={n6r!A2?FNHE=Y z5*hOeg5yeu;~#%%dP)cXwhWY+g3|T$>qPt*#a%+@h2@pb|52~&Krr3kaD1CbaNJ4i zyqEN!#StR*youQUFHg+~Up8mpcmQex`Pezmc?o}S^>WpE&O}^WVlz|F?b6Zyws&ts zOJ`_d5Rit(!tPb+6mnN1FkRmG0DK1yaitU3erDh78#E*MhtdU8kh95o8M7S>t=5}d zaD-mMsw-Q~eFnQ=3Syz7@ZSuL2oo(QnV(u&DgOW?o(cCMB!p>3_>6rOphd*mK$uv5 zPcS`NDwTD4qYuv^#VDvFqnL0l9UlPbVz{}^ik literal 0 HcmV?d00001 diff --git a/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/Contents.json b/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/Contents.json new file mode 100644 index 0000000..4ad7125 --- /dev/null +++ b/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images" : [ + { + "filename" : "my_bg_icon.png", + "idiom" : "universal", + "scale" : "1x" + }, + { + "filename" : "my_bg_icon 1.png", + "idiom" : "universal", + "scale" : "2x" + }, + { + "filename" : "my_bg_icon 2.png", + "idiom" : "universal", + "scale" : "3x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon 1.png b/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon 1.png new file mode 100644 index 0000000000000000000000000000000000000000..defa1d2d52c262245a4f82313f6d4f8f3f4ac5ec GIT binary patch literal 15315 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 literal 0 HcmV?d00001 diff --git a/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon 2.png b/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon 2.png new file mode 100644 index 0000000000000000000000000000000000000000..defa1d2d52c262245a4f82313f6d4f8f3f4ac5ec GIT binary patch literal 15315 zcmeHNdsI_rwvYCqQ?1DDjFzh83N!84TR^}ULK0gM#`<8Y?a-ZeOz1y}C<99RwhS(J1j@B>2C zgS8{z$ID3{?EZKu_>;LbJexrHPr`2h_dia%JT8-_tQk4w_O#~RX^X@6>L=A<@$ZnE zTc5;L|EZ>Xdj)^jf9x>V|8w!uYrlKAwP>1KEsFmmX|w0`<)QALKOA73pdJcn3C&s6 zP&EesH9XQK@#7W|2+6UZn%01AomD575Kb>X(^_(&TB=Ur%i?%a^_aFK0lMnfQ!0V*=R2idknByc5YDN#Bd72Mcjmo~?CkN7G`IpNBkf~gz}HT~LJSN-%7Rb5 z`pJB^5v7m4(hv#hkifoA0J5)ug`oGN+SV`T&v)B);8TJfhFn;`A2~s?KZAu}qe9C< zkIs7=*?INw3x*_U6HuY0%f{!sji`Eh@w`@CF!FDF;QyeJPgidaf?QGCB93va_j}dj zhwl!2xZ#I!Pu)R&i9UGN5{AZ`X|&1m)i&c|?Dxpvy^kCKd_)y+jmtN{??tp4k2ehL za;K!`L#upuAf?b)FN*=tG2A!nY-pVLgK3W(ixh6HgMs2_KD!)qVWFjj)7SBK4>LRv ze*MGr^(=r)4XJ4@0=M!^-|cGYOB^i3_2u$>LtS8aK=U(FUVA)w6m>{`mViX5DUw33 zD&ass%7B1oxUZnl9faI)|4-JhO_q%Kgny%vmtq<<{WN>(k?T7c{P4I!c3`U?f$;G9 zY-qdde2zz9Us8z7* zFE$;SIy@7joE+V}{sC+HyDXZJ6US)F<%=2{!rx=&Oiv|Y`mjvV83l2SY`=^&nzhdf z-GM)1yeiA2c$m27ZEDtE1Q!@YV8lW$%Nt#y%8r^;+s6*6z!!;RM90Q`iU^sM(SOibY@+1a_Mm&rJXDUTW} zF{t%juA)~6gim{)9LhPu7%$1|#C9E+DJXPvb!AtjqlYq$hDBHR>l_oF@A)y7`3nnQ zib+f~9`y)fe2$@2k6b59)_Fd-&yTiuCw5`4M)>qGQcqFMIKa2cYvQ-b^wtyCET zd@N+mVfs)kVv75ZbQ8Jsp>I)jruMY1iWUB%vWl;x$tRd3uj!B~F0_??h8ls9AuNuQ zD?6WD^mvG(J%_xO`DWo&^etvqZuY7|$4Z&WE(DEneU0_0k9os`*40;#Cugpzq$B!$ zuwdS|iq|ChOyFMLKnEL%%)jQBl;H|aA}TNGn7TNj9DncQuN^HKjdT2Lh6?L@QNb74ndt^mA0tfj%Yc<9r2hdY$W}aNT`)imc))?e#7p$@@ zvG`(M=QTHNPUbdTf(*K_aEtt95Pvl$ZGz;&C+ITnGj+4$q-({QU!Vafo8lYlRF?n3 zgsW8Xx|9+99nseJF_&91Bct~R33s5&FlN#cy8$$<+ur!e+paE?np)(}DM6`4eLLL| z3V{~!6huyv<6=5wAm0ksSia^0rTlG6KzMs@R4hXuVgssP>VV*rx3$zM)b56^)>Z0( zqW;5wM};h&&g`lUhBcaAvDcl~Xp8@wt>XCdQcj(gf^A~N$ExT) z(jxeQC>+3DxWU1#EIl^K*^pufW83Kr-&hXt>W4L+O1d+Ef+r`rihDOuH(E`i?&DEA z45r^B?oRd=#qycWPR6#RO_;-*kLwdoq;^?KFqydIwU(sGSMcMpqPjBg?y(t~-;pV+ zWmufM&ZjQAwo~43wuiKWD2`JO>!@EqM8dcA;C#bEh6!lJjf934* zj^izb67*_{sY^3B`<7u9A}GU~%9B}Pf2i(w2g2oQMWt7}_h#h2ds0m7Ax$dcdfY;8 znT+b{y285S0-|WXIKE6x^?go8kau-rHa$oZj%k@n^uE?XynO)=!Tb_vk;M?6g7js6 zAI*+lx=*C$bTx$pf-K)nn;`c!4EzO$LnV12>!jhrb8}=W7Gykby(&khlO=r3cBb7;sdn zbjJ-;-OU~hHiQ{uPMH;8z?JBxJ~>d-L|t{ws(S09ObUAf^&LjH?(Qb@jOGo*``Cq& z)Gn^8$LwC=F3ipKrwp0oeInrmASS0*RBho(cm}TFr9qJg_D&4=fN*8_=osMF+Pi@)y# zij|I@%RTd#bYY>)6|fz9`x;xD3g_6X#$#)izcb?p6uDE)73!%A(D9Vi{jY$Uwi2zq_$FdD-3VMgA1$~R;Xky= zx|WPB4b)XMQl3{qxrtzBg&0iZQe zm2Aofh#(SLXslGC`&Wd>nt=;H0O;q>JMFMvt~=ptzLvu=BS{~6t&9riV^1&N=en6auzZ`;RIBZoBigwIOFvZGhz@G|B*$G&IY^`3j>^mHJd{%(7~cF57NQXI&h$2CAddKYG!vlK zok7MF3|nR=Y4Md(*|`VmE3eF2ndy z;dF-bfPx^*ZO(esYzZq;z6peAh_xHxjG&!pVnWHmoG7lRcK9+IXq>kH389kwfhwu1ajcJ^AY{oWEg5*7S}1T{9zYfA5C z4rpue8h*5CwxYngtE?$;HI}`y%p_`DnOt!Ib8cb(UePkhjl%-^Ws^Gt_U=P9{2)Wv zC^K6$=cstWQI!EbFAqjI0;hhqnZ#Z(vnnrr>U$FvrwKLsS(^7cSg@%m6k2bua&ol2 z_`~>CokFb-|@He{yr z5iaPhtg!qX`3rKgkfDdyIwJ7WlO*ch%L=dTq~ z8Ik{dKbnRpQr5`8l2*zkL^V+1%-zyOG#qrs;)y=${C%fwiRr~8Dque#j|_L!MY|ce zg?To3&=(p`Wao-Yn=F4kybOoGNk&@5-kh|JC{0K)&CtOHf$aO^K^Z6x&_|7< zG(-MQyxTRCV#qgM5SW8eW;n2i*mt$IsTE6`k95;1Gkbt9hpY)ZWP+%Ivv+M&y5Z%0 z0rt&#mO0SCxq>L=l%TwX8(%JR?pv9l?Zo>)!%eb3$S*oz%CA(7Nk_Oo&F|-I%P4#M z+CE3zcV$^Il@WU#D|dxIa7wqU7jMvoLYY}&USs{(?(`a5Gk`y66+iifg<*~sEMw(F zny1=&fgi)d z5~Z|fKqr-s#CyKy@GqijU_^zT12D+UtXnX$hpcgNJ#(3O*~tsXwHYJtezRRiqC#y{ zrcBx@_-#HTh~uoIG3d8UfuJgKL{bkqsV-IAdM^RXud7M&{{6NTH8^|AptymXSeY^t zxJ1rEvfT$t-c~;Mv89?qAe`(isMqs=Mg3^Gwdj9x+uBMaqb{MaR19d^wYxGVW;3p; zs7Q88@tp$-3x)AYXUP`MG`H?Xl(~C);bw!i9q361eQI zuGzqU?)rB`zL*trC`V?}E&f?=y+MHIr&I~ANcL#cB#9$?JhDG6H@~FXJJX#$V5U||Sy3`Ulm&?|xq(!ox)eo{jc)k=Sj!&dy zoGG)*uv>eisytnwqf;l|^az#!&8niUPe5O@E~dc4xCdtteWuyJn>OYXBhTRHU>e}h zNE-wEtISaMEC2P*i;+=~3L9bw2MsF@s1~iGm>Z@U@aM@aR!a1uObJQPI(lK>A zSfOD{0Bxu<1f@?NI(5ebI2$GDL>-&n3!XiXK_tsu%z?fH8Cov7vDyk;j%8L?l7@91*mfs0eCRFVJTxxSK=|y0-M6$lDzIpO0>c8gcOs2rRWrcpL0KG(-z5sne z8}3}`n71>)-yLgo#%E<`M;#PXzT~)Qrnik?L7eqHiPEouKPeWkkydq3QaO5$G$g`6 zFWW*hy`4`KM~2^y!W2x+%2qUehO1=E_$yqQ={(fj=`e`IwmCv5>J^4qr3gC- zy?-IHpGd=ysz;`4>d?oAI~Pyc6?_ut!zJjLxoC+~<>?s{m`Cg1k?YLUdRdcbC(@wV zqhuAS`F!FX?P}CM^wD?V_emKkyZe6Wu%SIwS zLgeFrJ1W*^khm8YUSC3tuO$xt=r?l$zxbG8_*vGAp zkG(EBxFli?4vsUrThTCfZoKSzzxdSsE~^z|8tZbfCZ326%t5_3WO_FFmf24};fB`&jRTph;aVU& z*Kg)1vnNn2igLrz=e}v9)$5vDI+te`%)!07u8zmh2jz$L#!4^s$u91ZWljn0Hm% ztcGR+a0yaaCZh)i39J%%NIY{} zGLnAs3xO1r@XNfpwP3*Q+_tDr7h;<^9*6rewb9tFZ0|%1_KiCJm^yzM)II>U0a9yHdkL=Rfda_~~slND9{9V^kg2Y+8l4p18T zLlW@^j!-5JBgR`7!7xN5b^UBW)ZBPp_l)ttvJBty2Az>A5RBLbMY`pq zLP3%UZ^%%3OXSpe2?Z(*l0T2BR8W3B1@QK4OIvnsZf&Ed%@sfFr7BaYTX@md5s*ge zV#HJb0A0eVxB}~?6G-;GDHm&nF?!cvjO+162<6XOnT93Q32@c;MJiT1mM^OmuJdZ7)GCke;jgw=ZQ|BdQ?JoGE$L}}NlznobgNf|weFyau zrA(W!3Zs}Pj47+JPJtDUY^g21$=vr3REDhS^{y@kYsM(vt9*>qSYejm!Cm{SHOA`* zZHWL)+st0E2sGCkHX|u837)91jYhyT4)D~8ZM5WM8rw9m`*qwYEE*D^@N>sc;5ic8 zKnOh9G0%vGpcN#nIddm3JU`EDh5?q$e&EDzeLI2E<_u*xgA#Pkq=`))yXS2OoHLCv z@WP163(rHQ{>`in{e{_*-zspvAsaTlklj#;ox*L;&of=4{q0x~GW+ve z;<{ikYQb0tjDxACg~&n^)GH|qk%hAFW#bDlh*G!JPZn|(S~+|CL|@2Rh%&&`=K{e% zDo!xByFf7hUl5E5k-Fa#G{lxSZM6LOmFu_WGdtMF2``-iOm+F2fbeg8%H|^#heHDe zz5q>Qzq%Z7?Kd|97JT#$L_`-s{M>eNq807dERhkRr%poEo!yE@0lB|(8sf{gi_Ztq zlIAN7gf`2!L4)RYEB#W|%+d7NP+{sRdAa5n>lWX(2b*CAEbVZQ~gWDH`Wq3rvad<^o}b g`1t=iVO^TGEB3SGw7pjFt%I<8*M9%14~~BMKP^7+djJ3c literal 0 HcmV?d00001 diff --git a/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon.png b/keyBoard/Assets.xcassets/My/my_bg_icon.imageset/my_bg_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..defa1d2d52c262245a4f82313f6d4f8f3f4ac5ec GIT binary patch literal 15315 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 literal 0 HcmV?d00001 diff --git a/keyBoard/Class/Home/V/HomeRankCardCell.m b/keyBoard/Class/Home/V/HomeRankCardCell.m index fe490cb..6dce938 100644 --- a/keyBoard/Class/Home/V/HomeRankCardCell.m +++ b/keyBoard/Class/Home/V/HomeRankCardCell.m @@ -179,7 +179,7 @@ - (UILabel *)peopleLabel { if (!_peopleLabel) { _peopleLabel = [UILabel new]; - _peopleLabel.textColor = [UIColor colorWithHex:KBColor]; + _peopleLabel.textColor = [UIColor colorWithHex:KBColorValue]; _peopleLabel.font = [UIFont systemFontOfSize:10 weight:UIFontWeightRegular]; _peopleLabel.textAlignment = NSTextAlignmentCenter; _peopleLabel.numberOfLines = 2; diff --git a/keyBoard/Class/Me/V/KBMyHeaderView.h b/keyBoard/Class/Me/V/KBMyHeaderView.h index 91c802f..45c2fe4 100644 --- a/keyBoard/Class/Me/V/KBMyHeaderView.h +++ b/keyBoard/Class/Me/V/KBMyHeaderView.h @@ -16,7 +16,12 @@ NS_ASSUME_NONNULL_BEGIN @property (nonatomic, strong, readonly) UILabel *nameLabel; // 名称/提示 @property (nonatomic, strong, readonly) UIView *cardLeft; // 左卡片 @property (nonatomic, strong, readonly) UIView *cardRight; // 右卡片 + +/// 点击事件回调(由外部控制器设置)。 +@property (nonatomic, copy) void (^onKeyboardTapped)(void); +@property (nonatomic, copy) void (^onAvatarTapped)(void); +@property (nonatomic, copy) void (^onLeftCardTapped)(void); +@property (nonatomic, copy) void (^onRightCardTapped)(void); @end NS_ASSUME_NONNULL_END - diff --git a/keyBoard/Class/Me/V/KBMyHeaderView.m b/keyBoard/Class/Me/V/KBMyHeaderView.m index e9d38a0..d0d1d1d 100644 --- a/keyBoard/Class/Me/V/KBMyHeaderView.m +++ b/keyBoard/Class/Me/V/KBMyHeaderView.m @@ -14,6 +14,7 @@ @property (nonatomic, strong) UILabel *nameLabel; @property (nonatomic, strong) UIImageView *cardLeft; @property (nonatomic, strong) UIImageView *cardRight; +@property (nonatomic, strong) UIImageView *avatarEditIcon; // 头像右下角的编辑图标 @end @implementation KBMyHeaderView @@ -25,6 +26,7 @@ [self addSubview:self.titleLabel]; [self addSubview:self.keyboardBtn]; [self addSubview:self.avatarView]; + [self addSubview:self.avatarEditIcon]; // 头像右下角编辑图标 [self addSubview:self.nameLabel]; [self addSubview:self.cardLeft]; [self addSubview:self.cardRight]; @@ -38,13 +40,18 @@ make.centerY.equalTo(self.titleLabel); make.right.equalTo(self).offset(-20); make.height.mas_equalTo(34); - make.width.mas_greaterThanOrEqualTo(126); + make.width.mas_greaterThanOrEqualTo(115); }]; [self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) { make.left.equalTo(self).offset(26); make.bottom.equalTo(self.cardLeft.mas_top).offset(-23); make.width.height.mas_equalTo(70); }]; + [self.avatarEditIcon mas_makeConstraints:^(MASConstraintMaker *make) { + make.width.height.mas_equalTo(18); + make.right.equalTo(self.avatarView.mas_right); + make.bottom.equalTo(self.avatarView.mas_bottom); + }]; [self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.equalTo(self.avatarView); make.left.equalTo(self.avatarView.mas_right).offset(12); @@ -106,12 +113,25 @@ - (UIButton *)keyboardBtn { if (!_keyboardBtn) { _keyboardBtn = [UIButton buttonWithType:UIButtonTypeCustom]; - [_keyboardBtn setTitle:@" My Keyboard " forState:UIControlStateNormal]; + [_keyboardBtn setTitle:@"My Keyboard" forState:UIControlStateNormal]; _keyboardBtn.titleLabel.font = [UIFont systemFontOfSize:10 weight:UIFontWeightSemibold]; [_keyboardBtn setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; - _keyboardBtn.backgroundColor = [UIColor colorWithHex:KBColor]; + _keyboardBtn.backgroundColor = [UIColor colorWithHex:KBColorValue]; _keyboardBtn.layer.cornerRadius = 17; _keyboardBtn.layer.masksToBounds = YES; + + // 图标 + 文本,图文间距 6 + UIImage *kbImg = [UIImage imageNamed:@"my_kb_icon"]; + if (kbImg) { + [_keyboardBtn setImage:kbImg forState:UIControlStateNormal]; + _keyboardBtn.imageView.contentMode = UIViewContentModeScaleAspectFit; + CGFloat spacing = 6.0; + _keyboardBtn.contentEdgeInsets = UIEdgeInsetsMake(0, spacing, 0, spacing); + _keyboardBtn.titleEdgeInsets = UIEdgeInsetsMake(0, spacing, 0, -spacing); + } + + // 点击事件 + [_keyboardBtn addTarget:self action:@selector(onKeyboardTap) forControlEvents:UIControlEventTouchUpInside]; } return _keyboardBtn; } @@ -121,6 +141,9 @@ _avatarView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"lufei.jpg"]]; _avatarView.contentMode = UIViewContentModeScaleAspectFill; _avatarView.backgroundColor = [UIColor colorWithWhite:0.9 alpha:1.0]; + _avatarView.userInteractionEnabled = YES; // 头像可点击 + UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onAvatarTap)]; + [_avatarView addGestureRecognizer:tap]; } return _avatarView; } @@ -135,8 +158,43 @@ return _nameLabel; } -- (UIImageView *)cardLeft { if (!_cardLeft) { _cardLeft = [UIImageView new]; _cardLeft.contentMode = UIViewContentModeScaleAspectFit; _cardLeft.image = [UIImage imageNamed:@"my_member_icon"];} return _cardLeft; } -- (UIImageView *)cardRight { if (!_cardRight) { _cardRight = [UIImageView new];_cardRight.contentMode = UIViewContentModeScaleAspectFit; _cardRight.image = [UIImage imageNamed:@"my_recharge_icon"];} return _cardRight; } +- (UIImageView *)cardLeft { + if (!_cardLeft) { + _cardLeft = [UIImageView new]; + _cardLeft.contentMode = UIViewContentModeScaleAspectFit; + _cardLeft.image = [UIImage imageNamed:@"my_member_icon"]; + _cardLeft.userInteractionEnabled = YES; + UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onLeftCardTap)]; + [_cardLeft addGestureRecognizer:tap]; + } + return _cardLeft; +} +- (UIImageView *)cardRight { + if (!_cardRight) { + _cardRight = [UIImageView new]; + _cardRight.contentMode = UIViewContentModeScaleAspectFit; + _cardRight.image = [UIImage imageNamed:@"my_recharge_icon"]; + _cardRight.userInteractionEnabled = YES; + UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(onRightCardTap)]; + [_cardRight addGestureRecognizer:tap]; + } + return _cardRight; +} + +- (UIImageView *)avatarEditIcon { + if (!_avatarEditIcon) { + _avatarEditIcon = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"my_head_edite"]]; + _avatarEditIcon.contentMode = UIViewContentModeScaleAspectFit; + _avatarEditIcon.userInteractionEnabled = NO; // 仅展示 + } + return _avatarEditIcon; +} + +#pragma mark - Actions +- (void)onKeyboardTap { if (self.onKeyboardTapped) { self.onKeyboardTapped(); } } +- (void)onAvatarTap { if (self.onAvatarTapped) { self.onAvatarTapped(); } } +- (void)onLeftCardTap { if (self.onLeftCardTapped) { self.onLeftCardTapped(); } } +- (void)onRightCardTap { if (self.onRightCardTapped) { self.onRightCardTapped(); } } @end diff --git a/keyBoard/Class/Me/V/KBMyListCell.m b/keyBoard/Class/Me/V/KBMyListCell.m index 5553e73..c42ee4c 100644 --- a/keyBoard/Class/Me/V/KBMyListCell.m +++ b/keyBoard/Class/Me/V/KBMyListCell.m @@ -59,8 +59,8 @@ }]; [self.arrowView mas_makeConstraints:^(MASConstraintMaker *make) { make.centerY.equalTo(self.container); - make.right.equalTo(self.container).offset(-12); - make.width.mas_equalTo(8); + make.right.equalTo(self.container).offset(-16); + make.width.mas_equalTo(9); make.height.mas_equalTo(14); }]; [self.bottomLine mas_makeConstraints:^(MASConstraintMaker *make) { @@ -109,11 +109,7 @@ if (!_arrowView) { _arrowView = [[UIImageView alloc] init]; _arrowView.contentMode = UIViewContentModeScaleAspectFit; - _arrowView.tintColor = [UIColor colorWithHex:0xC0C0C0]; - // iOS13+ 使用系统图标,老系统可换成本地资源名 - if (@available(iOS 13.0, *)) { - _arrowView.image = [UIImage systemImageNamed:@"chevron.right"]; - } + _arrowView.image = [UIImage imageNamed:@"black_right_arrow"]; } return _arrowView; } diff --git a/keyBoard/Class/Me/V/KBSkinBottomActionView.m b/keyBoard/Class/Me/V/KBSkinBottomActionView.m index 44400f7..898890f 100644 --- a/keyBoard/Class/Me/V/KBSkinBottomActionView.m +++ b/keyBoard/Class/Me/V/KBSkinBottomActionView.m @@ -19,7 +19,7 @@ - (instancetype)initWithFrame:(CGRect)frame { if (self = [super initWithFrame:frame]) { - self.backgroundColor = [UIColor colorWithHex:KBColor]; + self.backgroundColor = [UIColor colorWithHex:KBColorValue]; self.layer.masksToBounds = YES; // 圆角生效 // 高亮态轻微透明,突出点击感 diff --git a/keyBoard/Class/Me/V/KBSkinDetailHeaderCell.m b/keyBoard/Class/Me/V/KBSkinDetailHeaderCell.m index 87678ce..64288fc 100644 --- a/keyBoard/Class/Me/V/KBSkinDetailHeaderCell.m +++ b/keyBoard/Class/Me/V/KBSkinDetailHeaderCell.m @@ -65,7 +65,7 @@ - (UILabel *)rightLabel { if (!_rightLabel) { _rightLabel = [UILabel new]; - _rightLabel.textColor = [UIColor colorWithHex:KBColor]; + _rightLabel.textColor = [UIColor colorWithHex:KBColorValue]; _rightLabel.font = [UIFont systemFontOfSize:15 weight:UIFontWeightMedium]; _rightLabel.textAlignment = NSTextAlignmentRight; _rightLabel.text = @"Download: 1 Million"; diff --git a/keyBoard/Class/Me/V/MySkinCell.m b/keyBoard/Class/Me/V/MySkinCell.m index 2ef29f2..3581f74 100644 --- a/keyBoard/Class/Me/V/MySkinCell.m +++ b/keyBoard/Class/Me/V/MySkinCell.m @@ -61,7 +61,7 @@ - (void)applySelected:(BOOL)selected { self.selectedState = selected; - UIColor *fill = selected ? [UIColor colorWithHex:KBColor] : [UIColor colorWithWhite:0 alpha:0.51]; + UIColor *fill = selected ? [UIColor colorWithHex:KBColorValue] : [UIColor colorWithWhite:0 alpha:0.51]; _circleLayer.fillColor = fill.CGColor; // 选中改为 #02BEAC _checkLayer.hidden = !selected; // 选中显示白对勾 } diff --git a/keyBoard/Class/Me/VC/MySkinVC.m b/keyBoard/Class/Me/VC/MySkinVC.m index d65b0ee..7831c5c 100644 --- a/keyBoard/Class/Me/VC/MySkinVC.m +++ b/keyBoard/Class/Me/VC/MySkinVC.m @@ -155,9 +155,9 @@ static NSString * const kMySkinCellId = @"kMySkinCellId"; BOOL enable = count > 0; self.deleteButton.enabled = enable; if (enable) { - self.deleteButton.backgroundColor = [UIColor colorWithHex:KBColor]; + self.deleteButton.backgroundColor = [UIColor colorWithHex:KBColorValue]; [self.deleteButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal]; - self.deleteButton.layer.borderColor = [UIColor colorWithHex:KBColor].CGColor; + self.deleteButton.layer.borderColor = [UIColor colorWithHex:KBColorValue].CGColor; } else { self.deleteButton.backgroundColor = [UIColor colorWithHex:0xF2F2F2]; [self.deleteButton setTitleColor:[UIColor colorWithHex:0xC8C8C8] forState:UIControlStateNormal]; diff --git a/keyBoard/Class/Shop/VC/KBShopVC.m b/keyBoard/Class/Shop/VC/KBShopVC.m index 2f04dc2..326983e 100644 --- a/keyBoard/Class/Shop/VC/KBShopVC.m +++ b/keyBoard/Class/Shop/VC/KBShopVC.m @@ -90,7 +90,7 @@ static const CGFloat JXheightForHeaderInSection = 50; backgroundView.indicatorHeight = 30; backgroundView.indicatorCornerRadius = JXCategoryViewAutomaticDimension; backgroundView.indicatorColor = [UIColor whiteColor]; // keep selected fill white - backgroundView.layer.borderColor = [UIColor colorWithHex:KBColor].CGColor; + backgroundView.layer.borderColor = [UIColor colorWithHex:KBColorValue].CGColor; backgroundView.layer.borderWidth = 1; backgroundView.indicatorWidthIncrement = 0; // 指示器宽度不额外加宽 // 点击切换时不需要左右滚动动画,直接跳转到目标位置 diff --git a/keyBoard/KeyBoardPrefixHeader.pch b/keyBoard/KeyBoardPrefixHeader.pch index 974e97e..c6406a1 100644 --- a/keyBoard/KeyBoardPrefixHeader.pch +++ b/keyBoard/KeyBoardPrefixHeader.pch @@ -58,7 +58,7 @@ #define COLOR_WITH_RGB(R,G,B,A) [UIColor colorWithRed:R green:G blue:B alpha:A] -#define KBColor 0x02BEAC +#define KBColorValue 0x02BEAC // 当前 KeyWindow(iOS 13 场景化兼容) static inline UIWindow *KB_KeyWindow(void) {