From ea4c27552a57dbbd9aff4a55ba42d8fe28caa53a Mon Sep 17 00:00:00 2001 From: KinoAndWorld Date: Wed, 14 Jan 2015 17:12:51 +0800 Subject: [PATCH 1/6] add star fill type and a delegate --- .../TQStarRating/Image/backgroundStar.png | Bin 3432 -> 0 bytes .../TQStarRating/Image/backgroundStar@2x-.png | Bin 0 -> 7156 bytes .../TQStarRating/Image/backgroundStar@2x.png | Bin 7156 -> 2573 bytes .../TQStarRating/Image/foregroundStar.png | Bin 4271 -> 0 bytes .../TQStarRating/Image/foregroundStar@2x-.png | Bin 0 -> 8187 bytes .../TQStarRating/Image/foregroundStar@2x.png | Bin 8187 -> 2586 bytes .../TQStarRating/TQStarRatingView.h | 20 +++++++-- .../TQStarRating/TQStarRatingView.m | 40 ++++++++++++++++-- .../project.pbxproj | 9 +--- .../TQStarRatingView/Default-568h@2x.png | Bin TQStarRatingView/TQStarRatingView/Default.png | Bin .../TQStarRatingView/Default@2x.png | Bin .../TQStarRatingView/TQAppDelegate.h | 0 .../TQStarRatingView/TQAppDelegate.m | 0 .../TQStarRatingView-Info.plist | 0 .../TQStarRatingView-Prefix.pch | 0 .../TQStarRatingView/TQViewController.h | 0 .../TQStarRatingView/TQViewController.m | 9 ++++ .../en.lproj/InfoPlist.strings | 0 .../en.lproj/TQViewController.xib | 0 TQStarRatingView/TQStarRatingView/main.m | 0 21 files changed, 64 insertions(+), 14 deletions(-) delete mode 100644 TQStarRatingView/TQStarRating/Image/backgroundStar.png create mode 100755 TQStarRatingView/TQStarRating/Image/backgroundStar@2x-.png mode change 100644 => 100755 TQStarRatingView/TQStarRating/Image/backgroundStar@2x.png delete mode 100644 TQStarRatingView/TQStarRating/Image/foregroundStar.png create mode 100755 TQStarRatingView/TQStarRating/Image/foregroundStar@2x-.png mode change 100644 => 100755 TQStarRatingView/TQStarRating/Image/foregroundStar@2x.png mode change 100644 => 100755 TQStarRatingView/TQStarRating/TQStarRatingView.h mode change 100644 => 100755 TQStarRatingView/TQStarRating/TQStarRatingView.m mode change 100644 => 100755 TQStarRatingView/TQStarRatingView.xcodeproj/project.pbxproj mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/Default-568h@2x.png mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/Default.png mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/Default@2x.png mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/TQAppDelegate.h mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/TQAppDelegate.m mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/TQStarRatingView-Info.plist mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/TQStarRatingView-Prefix.pch mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/TQViewController.h mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/TQViewController.m mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/en.lproj/InfoPlist.strings mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/en.lproj/TQViewController.xib mode change 100644 => 100755 TQStarRatingView/TQStarRatingView/main.m diff --git a/TQStarRatingView/TQStarRating/Image/backgroundStar.png b/TQStarRatingView/TQStarRating/Image/backgroundStar.png deleted file mode 100644 index 5aaafbfcbfc79c331eb0df1b2b5e1247e3667717..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3432 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 I2|Xb0ze6TDd;kCd delta 7039 zcmZ8_by!qiwD!;;F(@%e4M^wET?0silypf+$AG{f9HfyJRJvqPkdP2zXc3SaQczGp z5n&j*n{R&i-oL){Jp1f@_Sv=e^RBhtwbJMhWr5@eM%vVrcPT+25Vfw3rYXL5#TO@X zQv4f-n1h2rM7y3E8V__eG@uWH{M|i$+(01ytTc;X{tM>xs>%L#6^yE-4e2xtDfJd+ zwrwnTYX?Ymvr$<1-L|psf)zs{es|60WLlO&TLIsoaEwZI zLZLTW_PKH_6WvnvG(2nVp4v-yM2%xo1TL*%q8qj?V(`xZ)J4b+Tzbg{1RHl{)oNZ7W!PAdq;MnMl>e z7GPpVL}ZZjV8%2DlKj@0#%(KnHM%eGOD=WIT%PoO&+*@M+i|P~!FS>}2iKqiFEm_p zQ=<(Qx&5>HxKpO+f&!*nSX0Iy{rYiupdvLPw89oU+E#quk$$HpVhWh32M$jdy)Uu~ zJ%vib$a?x{nsbTv&g(_5J_zkMz(qSEns6Jp4V0?7s}`z`W+=DcSA9&%I#>Rf&~2gP z;^&?@sibm0Gm&Wo>d@!*^yx&v4N>@$)K5H*#uVo6cv|tTlc5rMBCdNr9?n~O@H!aBl4NDF&9zkNGykgJceAu=Li2vbiK zk!$k3*6^OvPtb8*n4xL1_7ne7n9DE?O^N8I3)ErtXnk4IN)~btXkBYDD7wz2e4NTq zkAUVX$h;p#a!!P+MIz@tn6}<+6$YmLK#T2|<;<;0MODAE`*7GBWi4qa{~)|kUwK1x zVgveN2ijfE@viqoq~QR`eXv9-cgVD8Ez9*Im}uFXw)Eno&TL}npQaK5JGoNXpYgjG zW9}$|U9XFiJ;0t>rK7-4x`1}KYvYvIX=TOzpk&n@v7&$2O&TzC$z%-*4Ew_WSq*Or zC<1h>5g^d5JO32|P<|l<1R`+F(qqXg5WZt&_yDTmALIs=5|t8#aj8&3q1j{va8i7Y zf3kH6*ctz~`9I%KXqc~$A3`C_Hz2!=fF1as@&ETn3E!!p5#;6^>>p(A@9(3c?&|-@ z4XW$w?BQnW=Ik1-B=-N0_`j8v#DZMi6*S!tEe=G?$&W=QUDGg5VP?)4g~ zzC`}aFFpLZ5c=mY`pE^n4_s<%^?0hRCTk`9%DA`(LZm5IU4MX6d7)O%-Q(k_-OSCM zPBWpT#O_G6|4HZCX2$jj2CFFf_37bZ@T<4g@7s6mwv|sJF&E*Bz%&d+Usrk)y@mu? zW+r#vfl{p<)7UdyQ`&<_!MVTyTe zit$L*+Rvkcj#CgsKY#wbKzO8D+z?@^rPXiP#%^q!brPo|@HP9T^oxjqYExwLIDApbbkqebxm6}9ep{bdf%PP|6 zm)7EKQwN8x2LcwU5D4&q)W}V2 z92~CGSZSMVzv{!|zz6Z**m!Vpn*wYwAUAlDB0?Fn4Hctk@NH*Ti`(y(qIjT3 zr%nQ3xhF?|!`kCJ?p2hRKYFzy=f?eX3LJABIq@~?9u6Th;m5T@?wl$jOLY%!(+eSL zh9~3DnWk`Z6K<58TR+f~cNB0l+3uB3bcTTKKss6KfPS~Iz-o;Sw*+jkuiNJ@34W74SSr?Z zxC~A{0Ex|+LM&50mm(}gjHjZ;9-8peqgT&y_2ai3UogexynIQLV@eAf$jO-kBrVY0 z6Ca79wP`?*goew%L)qab1epI|s7|9Y5@N58DM*@-);JN$$KKZEvmS)p`gbZWdh4n< zvza5eI#;mV1!>BUBCds?r$|7#mDoH{XL7Z&B=INqDmB@M5%A%W5i)vu`ln=%MjOjPlatM((k;H)L5GmnX;H>HXisOAEU2bndHJv?J&2T_ zztt~-+BvlsM$NtXrNc^?@oT?iFv(Ruc)&_cFPtb^-Bd5vUGPDW{U?z#v#EQDmt=Y3 zVjRB-D?Rh;a2P=`v7NcD3dcJVPd2~b9%g{soCk~rh|vqxb#cL1iWbUywIXc_ItpJ!k+wq<62m(5GZQt>Mp^<8>#sy81# zezb^(bMAym-6a974+5Z4d9ocLX_Esvkz7cqNn4$*3oZwNSK`nqSM zkSA_e0&%5MWKjNOs2t1{%RgWhE&hbs-csP@u!Xr-Iz5p2)&S%)X(T)sGyInmtrU)BKp z7VQ@0c(?Qv_~j!-D0LlCau1e&aTO%LNTWLW*wr;ok!*$FmG_+owOviQGv6$ zuelDNCDE^#^f#NLvSrL5ZJN{$X6CezzKq_AI&*-9}TKr?+v>QrvD=D(M0-FDFboc zM4GhnM;E6Y=H3AZ>C+xaD^AV(X?i7-=iKXGgRxDWZ%Q>zEbD^J?v}kg4(U})U$HM~ zjv3{TG`jeyiFb3w9M`*v1^-6#n(p-EjnD;Ik`qKPzjllY|3yTr^kK8}WU*a{J%fp0 z89hGX0yI`h9T-lJf-8Ul$>I&@B;czu_V8x(gyW!~5rZjfaLsX?io;cAZ`bC;tjMu> zDSMJ+a>0D3T%q8{#WKG0`nb9Jn~=c3y&KTuPCJ6omtYVKQ>?7`FP_Q4>O}e-!bjpK_;`LurV@6}oqwHigq!3~x-N#w8*wyUOx1<$9l5sd%VEmbk2xl)Y zN;mY+Ax8f7?|{><)fVq%qAnJeu754}#;Ou52Wz$d;v@!Xnwgnllkf1kU$1Mc+MK=a zzI3Z}hQvrgJHvVVOmLD`bL`!D_fB>9FKCoYCz9tDkHHLc@OSkZN5!R_16uS4x2Y-ivrcBE)|!NX4Lf^<41L$lk3fyNqN zGqMu6Z&N@L=t?9#Fe9|8m%I9S(Tb*~ruZf1PtedAb}$^Kdb$k6Hq>{WZ^R4?47@Cf zI>)XD$Zek8?$cQ4zbL%P|Kq^zXfd!m_6Rt^Ob_$1*=x{tUnTQLQ;A3! z-bvQ{-2SRg*#lG9D?Mk2s3G ze>O#&Y!~$XhRFg{8k}s&;m*SPd`>o8?-YO34-fQa%AZ^=Dax0KLoF)3N|x5U;ueo~ zAL>zH^}9j zbH!a`6$Ge`NgEBxGbK{8AJ#iW&h^HU?Obm*jSnBKkHAu&^y}2;Z;pr~DV4)^6%i7~ z4iR29W(hQG=RZ#OR)8kwz62(N>7N;*yhwX?7Y;D|-P1qGe2jieT~{2m94bn~Fd&tX zs|S|a+>%74ZZcLa+pH;Obgn!59+P96TghBsQ{!XP8u0sE+IzNxbU8rm>$1?~>o}0w z-=A#=$M%!Oh&gs;WH3^gkws@-9mOD)97{+vLQae%{3VQaU8keZdIT9b!&`+bY@SDP zczJX4p}p&*=Go+297y1`!fG!Wz|pa`^=Zjre(I;GJBhF{(Ivwp;Me>1T_%N)nBY5Z z*0XEVZ;b)Zz69!VqEkoL-atpnHfS7dziq9!{pg2B$<-PjT{I__shw0yOvT5<=(BsZ zP~Qe$mRK@cm7`k!NSq@Fa=q+^cw%OS{^o!eT0CrDS->eEo@DX;Q66;#EI>lNqW6uBYLT%z zk@PQYo6dQJEWKBPuI#?T@!%s25@$2$oeFY|(f+;Nt!n(A^`7TjR%5Mqg zcbfM<33__75WN_3H3C|BJ?=_4e~xP~9p;>Qa!=Eiy?os73Uz|OPUdo)-xiwaQcabL z!Avu~!4LnDBVbmy#UjwGjUjIk#>rs9trR5szO19D2IkL!Cr8_irM`6U?`40RM3Q+X zbam8-*-V;()|9wWg|Atv{$^%|DMcx+b?Au6Y)CHM;k8Q0!|F%|_ipG9T*FaO)ZNK% zN@EZzJ%NSRk)oMWL2z>YEtW!1&x~|z+&lk`3b2Kk?>dPN@xVJ<8mkle%h#{PhU0yL;7QI9efhO`*YQrmH;YU)5|(sB=2&3+A&~vMv#+t&o?nomYL&LOHISlnPHK1pvs7lm;>+@1JPL9TB;kZughf)aj z)JMCycwF<50oIl+IBiDy`K8W$j&+OglG4-DU6mU#*m(|k0Fu%FXvJrtE|@jZELdyk zu1Lv7p47L(cm6Wp6umv9RNCv_vksczqs+d|EM9C^T;2P$p@_LrW|vfI8q(M~@d4z+ zPXLzdTuPi(8QDA}e^Z(Bf}m<^1kHF_gzl#WMi8> z#7)(Qk1^oW!~jKQ+Py0;lxD{C>8o0xDOB)2de8QCGCp@891*G6v~V`kfY9vD1@UN^)6|*bU zorRW8>yl$KM^Srp@JP8`J$}E*P?-<7Jl(6O;B>Nnc;6Lu zhdTJDum6HfUO&U+<3rRPJ|p1EIov3+GQGdQpCl&vJeTc&cxAl&Na0S%FyCzo9Ra$G ze!7%Fo1LzU?b@TGBU?W-wlehd?_FzGzvw`&tgl&k`_B{)PCVIK2wfORW7%;|C8_!> z6t_!Aj4oO1A?qmsVZ|dQZzubZ?4D>P`7Yp9#Zo=IJxsuBU)$ok1z?>EF%j?h(;0%B z^<|TA{ffhzyBmm_KHn!(JYh&_L#%a~n40c;8XAu6mE2seEy>{#*sKNx4F=91#fO(Q zw(t?_cviVtf9!SoFdo&^U~ItXG76FQnn_iI?()7AJ|qz+^}VtSZEUcjN^sWn7|TDJ zAI+2eBqb%aNf-doyyiFx0L6at`CLea7xK27l5mGGT!#>@06+lBY`*YN3@idVq%MnNGV)m&Ns#bXw~ z*0Kh?503;*iZ0p^o|fa8$u~TKV;2+=x$+rIXG73(04hpaVvjcBbvuKNi+1p7ia&d& zQFi}Ynu|+~$=kyA{(vxN@cd*vx}MmGK?G3~^YhOGW~89Ox7&dBo|lrf5Q9Vlme8#@@`{eoBBWLy0@jghcpS4ZH? zyWfTjpJG??kK)zwEB7 zt^Ji&ck#RqPAJ#q^{slX(x?czUiG%v=6r9EWBlgwV7y*}D)yp%YnoznORox8BK#`I zX+4*T=V^=lsLNO!TI(<+Ao>&Suda>i_vvERjelP+T`Zoo5S$Wsb}apofPzxPH>%z; zcI*!eEy;&$%!CaF3YXS8yrKcUNNqU(FJ1O>tk<>ZzdRKwsNh)(2O^MF8-Mx6_i>>>Dg=0LV0J}o)`YSy6f6dLz1bcI3!Q#M$gjt$g1al#lj7&^7+A@7h zHH=K&US9XfIX4KxRM);h5PiRQ_ZWm8UN$#0?D1JxSafS_4}qc&RtC~8B3)cojPX?I zYP!6fV6Y;mZc)m_%1X{&PhP4Z7BA|k8$*KgOjdV*{T!R5`zVl3%_4I-(&#oKLlWD2 z)%u0D;V&rJ3D$bkOUCiD)q8F`@qPyTmG)c+s>S7$5oI1OLzZdrc9GRvloZBmAJZDJ z(|MxO={}af1y72NC8hRKKQ4b)+(Qz8#3Q8sdc(5&{Lyr!A+XpHeh@ldq$o?=0~z>k zVcprjSTa*k59n~4+Tr!Psj*SQ0?(+o@f>vfX19-4TM%V{q92)!j5u?{N3n_bmcmxj zF1)zES?V#c zDTVE};4kT1J|6aHp962c8XlY5)KL diff --git a/TQStarRatingView/TQStarRating/Image/foregroundStar.png b/TQStarRatingView/TQStarRating/Image/foregroundStar.png deleted file mode 100644 index 3515377c6adeed13ba7601f2b031a0920aada50a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4271 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 WBT7-#K+L~ibO@!Viq-N~A^!!kfpl5` literal 0 HcmV?d00001 diff --git a/TQStarRatingView/TQStarRating/Image/foregroundStar@2x.png b/TQStarRatingView/TQStarRating/Image/foregroundStar@2x.png old mode 100644 new mode 100755 index 75900e1c5f1e1f63b9c373c5cf9be31acf49f43f..5dbaf759415a02f0a77fff45a9ebaa8ac6a0826d GIT binary patch literal 2586 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 KnU`HccmEf?Uo~L> delta 8079 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 diff --git a/TQStarRatingView/TQStarRating/TQStarRatingView.h b/TQStarRatingView/TQStarRating/TQStarRatingView.h old mode 100644 new mode 100755 index e3cb62b..10609ac --- a/TQStarRatingView/TQStarRating/TQStarRatingView.h +++ b/TQStarRatingView/TQStarRating/TQStarRatingView.h @@ -13,16 +13,30 @@ @protocol StarRatingViewDelegate @optional --(void)starRatingView:(TQStarRatingView *)view score:(float)score; + +- (void)starRatingView:(TQStarRatingView *)view score:(float)score; + +//可以用于设置星星范围控制 +- (BOOL)starRatingView:(TQStarRatingView *)view shouldShowScore:(float)score; @end -@interface TQStarRatingView : UIView +/** + 填充粒度 + */ +typedef enum : NSUInteger { + StartFillTypeAll, //自由填充 粒度是0.1 + StartFillTypeHalf, //半颗星 + StartFillTypeFull, //一颗星 +} StartFillType; -@property (nonatomic, readonly) int numberOfStar; +@interface TQStarRatingView : UIView @property (nonatomic, weak) id delegate; +//设置星星填充的最小粒度 默认是StartFillTypeAll +@property (nonatomic, assign) StartFillType fillType; + /** * 初始化TQStarRatingView * diff --git a/TQStarRatingView/TQStarRating/TQStarRatingView.m b/TQStarRatingView/TQStarRating/TQStarRatingView.m old mode 100644 new mode 100755 index c8b0b76..bfb0167 --- a/TQStarRatingView/TQStarRating/TQStarRatingView.m +++ b/TQStarRatingView/TQStarRating/TQStarRatingView.m @@ -48,8 +48,9 @@ - (id)initWithFrame:(CGRect)frame numberOfStar:(int)number return self; } -- (void)commonInit -{ +- (void)commonInit{ + self.fillType = StartFillTypeAll; + self.starBackgroundView = [self buidlStarViewWithImageName:kBACKGROUND_STAR]; self.starForegroundView = [self buidlStarViewWithImageName:kFOREGROUND_STAR]; [self addSubview:self.starBackgroundView]; @@ -187,7 +188,40 @@ - (void)changeStarForegroundViewWithPoint:(CGPoint)point } NSString * str = [NSString stringWithFormat:@"%0.2f",p.x / self.frame.size.width]; - float score = [str floatValue]; + CGFloat score = [str floatValue]; + + if (self.fillType == StartFillTypeFull) { + //which star is touch on + NSUInteger part = (1.0 / _numberOfStar) * 100; + NSUInteger present = score * 100; + NSUInteger index = present / part; + if (present % part != 0) { + index++; + } + score = index * part / 100.f; + }else if (self.fillType == StartFillTypeHalf){ + NSUInteger part = (1.0 / _numberOfStar) * 100; + NSUInteger present = score * 100; + NSUInteger index = present / part; + NSUInteger gws = 0; + if (present % part != 0) { + int tmp = present*1.f / part*1.f * 10; + gws = tmp % 10; + } + if (gws >= 5) { + score = (index+1.0) * part / 100.f; + }else{ + score = (index+0.5) * part / 100.f; + } + } + + BOOL shouldShow = YES; + if ([self.delegate respondsToSelector:@selector(starRatingView:shouldShowScore:)]) { + shouldShow = [self.delegate starRatingView:self shouldShowScore:score]; + } + if (!shouldShow) return ; + + p.x = score * self.frame.size.width; self.starForegroundView.frame = CGRectMake(0, 0, p.x, self.frame.size.height); diff --git a/TQStarRatingView/TQStarRatingView.xcodeproj/project.pbxproj b/TQStarRatingView/TQStarRatingView.xcodeproj/project.pbxproj old mode 100644 new mode 100755 index cc9711b..60e662b --- a/TQStarRatingView/TQStarRatingView.xcodeproj/project.pbxproj +++ b/TQStarRatingView/TQStarRatingView.xcodeproj/project.pbxproj @@ -19,9 +19,7 @@ 58F0AEF517CDD614009FE3CB /* TQViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 58F0AEF417CDD614009FE3CB /* TQViewController.m */; }; 58F0AEF817CDD614009FE3CB /* TQViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 58F0AEF617CDD614009FE3CB /* TQViewController.xib */; }; 58F0AF0117CDD6A3009FE3CB /* TQStarRatingView.m in Sources */ = {isa = PBXBuildFile; fileRef = 58F0AF0017CDD6A3009FE3CB /* TQStarRatingView.m */; }; - 58F0AF0717CDDA9D009FE3CB /* backgroundStar.png in Resources */ = {isa = PBXBuildFile; fileRef = 58F0AF0317CDDA9D009FE3CB /* backgroundStar.png */; }; 58F0AF0817CDDA9D009FE3CB /* backgroundStar@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 58F0AF0417CDDA9D009FE3CB /* backgroundStar@2x.png */; }; - 58F0AF0917CDDA9D009FE3CB /* foregroundStar.png in Resources */ = {isa = PBXBuildFile; fileRef = 58F0AF0517CDDA9D009FE3CB /* foregroundStar.png */; }; 58F0AF0A17CDDA9D009FE3CB /* foregroundStar@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 58F0AF0617CDDA9D009FE3CB /* foregroundStar@2x.png */; }; /* End PBXBuildFile section */ @@ -44,9 +42,7 @@ 58F0AEF717CDD614009FE3CB /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = en.lproj/TQViewController.xib; sourceTree = ""; }; 58F0AEFF17CDD6A3009FE3CB /* TQStarRatingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TQStarRatingView.h; sourceTree = ""; }; 58F0AF0017CDD6A3009FE3CB /* TQStarRatingView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TQStarRatingView.m; sourceTree = ""; }; - 58F0AF0317CDDA9D009FE3CB /* backgroundStar.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = backgroundStar.png; sourceTree = ""; }; 58F0AF0417CDDA9D009FE3CB /* backgroundStar@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "backgroundStar@2x.png"; sourceTree = ""; }; - 58F0AF0517CDDA9D009FE3CB /* foregroundStar.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = foregroundStar.png; sourceTree = ""; }; 58F0AF0617CDDA9D009FE3CB /* foregroundStar@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "foregroundStar@2x.png"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -132,9 +128,7 @@ 58F0AF0217CDDA9D009FE3CB /* Image */ = { isa = PBXGroup; children = ( - 58F0AF0317CDDA9D009FE3CB /* backgroundStar.png */, 58F0AF0417CDDA9D009FE3CB /* backgroundStar@2x.png */, - 58F0AF0517CDDA9D009FE3CB /* foregroundStar.png */, 58F0AF0617CDDA9D009FE3CB /* foregroundStar@2x.png */, ); path = Image; @@ -197,9 +191,7 @@ 58F0AEF017CDD614009FE3CB /* Default@2x.png in Resources */, 58F0AEF217CDD614009FE3CB /* Default-568h@2x.png in Resources */, 58F0AEF817CDD614009FE3CB /* TQViewController.xib in Resources */, - 58F0AF0717CDDA9D009FE3CB /* backgroundStar.png in Resources */, 58F0AF0817CDDA9D009FE3CB /* backgroundStar@2x.png in Resources */, - 58F0AF0917CDDA9D009FE3CB /* foregroundStar.png in Resources */, 58F0AF0A17CDDA9D009FE3CB /* foregroundStar@2x.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; @@ -337,6 +329,7 @@ 58F0AEFD17CDD614009FE3CB /* Release */, ); defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; diff --git a/TQStarRatingView/TQStarRatingView/Default-568h@2x.png b/TQStarRatingView/TQStarRatingView/Default-568h@2x.png old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/Default.png b/TQStarRatingView/TQStarRatingView/Default.png old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/Default@2x.png b/TQStarRatingView/TQStarRatingView/Default@2x.png old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/TQAppDelegate.h b/TQStarRatingView/TQStarRatingView/TQAppDelegate.h old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/TQAppDelegate.m b/TQStarRatingView/TQStarRatingView/TQAppDelegate.m old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/TQStarRatingView-Info.plist b/TQStarRatingView/TQStarRatingView/TQStarRatingView-Info.plist old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/TQStarRatingView-Prefix.pch b/TQStarRatingView/TQStarRatingView/TQStarRatingView-Prefix.pch old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/TQViewController.h b/TQStarRatingView/TQStarRatingView/TQViewController.h old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/TQViewController.m b/TQStarRatingView/TQStarRatingView/TQViewController.m old mode 100644 new mode 100755 index a35b06c..85fc62c --- a/TQStarRatingView/TQStarRatingView/TQViewController.m +++ b/TQStarRatingView/TQStarRatingView/TQViewController.m @@ -25,6 +25,7 @@ - (void)viewDidLoad _starRatingView.delegate = self; [self.view addSubview:_starRatingView]; + _starRatingView.fillType = StartFillTypeHalf; } -(void)starRatingView:(TQStarRatingView *)view score:(float)score @@ -34,6 +35,14 @@ -(void)starRatingView:(TQStarRatingView *)view score:(float)score [self.nibStarRatingView setScore:score withAnimation:YES]; } + +- (BOOL)starRatingView:(TQStarRatingView *)view shouldShowScore:(float)score{ + if (score <= 0.f) { + return NO; + } + return YES; +} + - (IBAction)scoreButtonTouchUpInside:(id)sender { //设置分数。参数需要在0-1之间。 diff --git a/TQStarRatingView/TQStarRatingView/en.lproj/InfoPlist.strings b/TQStarRatingView/TQStarRatingView/en.lproj/InfoPlist.strings old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/en.lproj/TQViewController.xib b/TQStarRatingView/TQStarRatingView/en.lproj/TQViewController.xib old mode 100644 new mode 100755 diff --git a/TQStarRatingView/TQStarRatingView/main.m b/TQStarRatingView/TQStarRatingView/main.m old mode 100644 new mode 100755 From e9cf16d37c466264d8cdc4a355ea575c83ca3cd0 Mon Sep 17 00:00:00 2001 From: Kino Date: Wed, 14 Jan 2015 17:29:45 +0800 Subject: [PATCH 2/6] Update README.md --- README.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/README.md b/README.md index f267ed6..8f88ef6 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,25 @@ TQStarRatingView IOS 星星评分视图控件,点击和滑动评分。 +### 我增加了什么功能 + +- delegate + + ```//可以用于设置星星范围控制 + - (BOOL)starRatingView:(TQStarRatingView *)view shouldShowScore:(float)score; + ``` +- 属性fillType,用于控制星星显示粒度 + + ```/** + 填充粒度 + */ + typedef enum : NSUInteger { + StartFillTypeAll, //自由填充 粒度是0.1 + StartFillTypeHalf, //半颗星 + StartFillTypeFull, //一颗星 + } StartFillType; +``` + #### 控件效果 ![Image text](http://github.com/TinyQ/TQStarRatingView/raw/master/READMEIMAGE/TQStarRatingView.gif) From a98606b2ea59b823600be423c2c85959176f3729 Mon Sep 17 00:00:00 2001 From: Kino Date: Wed, 14 Jan 2015 17:32:44 +0800 Subject: [PATCH 3/6] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 8f88ef6..89a95d0 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ IOS 星星评分视图控件,点击和滑动评分。 填充粒度 */ typedef enum : NSUInteger { - StartFillTypeAll, //自由填充 粒度是0.1 + StartFillTypeAll, //自由填充 粒度是0.01 StartFillTypeHalf, //半颗星 StartFillTypeFull, //一颗星 } StartFillType; From d0360d551eddee1b96709977cd7868f4031e1547 Mon Sep 17 00:00:00 2001 From: Kino Date: Wed, 14 Jan 2015 17:33:50 +0800 Subject: [PATCH 4/6] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 89a95d0..b9620b1 100644 --- a/README.md +++ b/README.md @@ -7,9 +7,9 @@ IOS 星星评分视图控件,点击和滑动评分。 ### 我增加了什么功能 -- delegate +- delegate 可以用于设置星星范围控制 - ```//可以用于设置星星范围控制 + ``` - (BOOL)starRatingView:(TQStarRatingView *)view shouldShowScore:(float)score; ``` - 属性fillType,用于控制星星显示粒度 From e209f95fe4266b98e6d07122a7f5de5c2559b7c4 Mon Sep 17 00:00:00 2001 From: Kino Date: Wed, 14 Jan 2015 17:34:18 +0800 Subject: [PATCH 5/6] Update README.md --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b9620b1..71d2cab 100644 --- a/README.md +++ b/README.md @@ -14,7 +14,8 @@ IOS 星星评分视图控件,点击和滑动评分。 ``` - 属性fillType,用于控制星星显示粒度 - ```/** + ``` + /** 填充粒度 */ typedef enum : NSUInteger { From 889939fe2e8eafc002c1c24735fc17d23eb400a5 Mon Sep 17 00:00:00 2001 From: Kino Date: Wed, 14 Jan 2015 17:57:52 +0800 Subject: [PATCH 6/6] Update TQStarRatingView.h --- TQStarRatingView/TQStarRating/TQStarRatingView.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/TQStarRatingView/TQStarRating/TQStarRatingView.h b/TQStarRatingView/TQStarRating/TQStarRatingView.h index 10609ac..144c966 100755 --- a/TQStarRatingView/TQStarRating/TQStarRatingView.h +++ b/TQStarRatingView/TQStarRating/TQStarRatingView.h @@ -33,7 +33,7 @@ typedef enum : NSUInteger { @interface TQStarRatingView : UIView @property (nonatomic, weak) id delegate; - +@property (nonatomic, readonly) int numberOfStar; //设置星星填充的最小粒度 默认是StartFillTypeAll @property (nonatomic, assign) StartFillType fillType; @@ -68,4 +68,4 @@ typedef enum : NSUInteger { #define kBACKGROUND_STAR @"backgroundStar" #define kFOREGROUND_STAR @"foregroundStar" -#define kNUMBER_OF_STAR 5 \ No newline at end of file +#define kNUMBER_OF_STAR 5