Skip to content

Commit

Permalink
修改
Browse files Browse the repository at this point in the history
  • Loading branch information
MR-Zong committed Aug 16, 2016
1 parent 82f5d1e commit 70a8241
Show file tree
Hide file tree
Showing 6 changed files with 62 additions and 5 deletions.
4 changes: 3 additions & 1 deletion ZGBarrage/ZGBarrage.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

/* Begin PBXBuildFile section */
EF176A711D5969250060DAE6 /* ZGMagazine.m in Sources */ = {isa = PBXBuildFile; fileRef = EF176A701D5969250060DAE6 /* ZGMagazine.m */; };
EF265DC91D60508700EC0D00 /* Zong.jpg in Resources */ = {isa = PBXBuildFile; fileRef = EF265DC81D60508700EC0D00 /* Zong.jpg */; settings = {ASSET_TAGS = (); }; };
EF265DC91D60508700EC0D00 /* Zong.jpg in Resources */ = {isa = PBXBuildFile; fileRef = EF265DC81D60508700EC0D00 /* Zong.jpg */; };
EF2C5EE81D5865E300049AD7 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = EF2C5EE71D5865E300049AD7 /* main.m */; };
EF2C5EEB1D5865E300049AD7 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = EF2C5EEA1D5865E300049AD7 /* AppDelegate.m */; };
EF2C5EEE1D5865E300049AD7 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = EF2C5EED1D5865E300049AD7 /* ViewController.m */; };
Expand Down Expand Up @@ -80,6 +80,7 @@
EF4708C91D5B331E00A5DE64 /* 弹幕效果展示.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "弹幕效果展示.gif"; sourceTree = "<group>"; };
EF7360C71D59BA4B00967D6F /* ZGEmitter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZGEmitter.h; sourceTree = "<group>"; };
EF7360C81D59BA4B00967D6F /* ZGEmitter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ZGEmitter.m; sourceTree = "<group>"; };
EFA87EE71D62FCDE005641CA /* ZGBarrageViewDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZGBarrageViewDelegate.h; sourceTree = "<group>"; };
/* End PBXFileReference section */

/* Begin PBXFrameworksBuildPhase section */
Expand Down Expand Up @@ -205,6 +206,7 @@
EF35FC011D59783900288C3A /* ZGBarrageFlowLayout.m */,
EF7360C71D59BA4B00967D6F /* ZGEmitter.h */,
EF7360C81D59BA4B00967D6F /* ZGEmitter.m */,
EFA87EE71D62FCDE005641CA /* ZGBarrageViewDelegate.h */,
);
path = Model;
sourceTree = "<group>";
Expand Down
21 changes: 21 additions & 0 deletions ZGBarrage/ZGBarrage/ZGBarrage/Model/ZGBarrageViewDelegate.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
//
// ZGBarrageViewDelegate.h
// ZGBarrage
//
// Created by Zong on 16/8/16.
// Copyright © 2016年 Zong. All rights reserved.
//

#import <UIKit/UIKit.h>

@class ZGBarrageView;
@class ZGBarrageItemModel;

@protocol ZGBarrageViewDelegate <NSObject>

- (void)barrageView:(ZGBarrageView *)barrageView didSelectItemAtIndexPath:(NSIndexPath *)indexPath;
- (void)barrageView:(ZGBarrageView *)barrageView didSelectItemAtIndexPath:(NSIndexPath *)indexPath itemModel:(ZGBarrageItemModel *)itemModel;
- (void)barrageView:(ZGBarrageView *)barrageView didSelectItemImageViewWithItemModel:(ZGBarrageItemModel *)itemModel;
- (void)barrageView:(ZGBarrageView *)barrageView didSelectItemTextLabelWithItemModel:(ZGBarrageItemModel *)itemModel;

@end
4 changes: 3 additions & 1 deletion ZGBarrage/ZGBarrage/ZGBarrage/View/ZGBarrageCell.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@

@class ZGBarrageItemModel;

@class ZGBarrageView;

@protocol ZGBarrageCellAnimateDelegate <NSObject>

- (void)animationDidStopWithCell:(ZGBarrageCell *)cell;
Expand All @@ -34,7 +36,7 @@ extern NSString * const ZGBarrageCellReusableIdentifier;
@property (nonatomic) CGFloat minimumInteritemSpacing;
@property (nonatomic, strong) ZGBarrageItemModel *itemModel;
@property (nonatomic, readonly, copy) NSString* identifier;

@property (nonatomic, weak) ZGBarrageView *barrageView;
- (instancetype)initWithReusableIdentifier:(NSString*)identifer;

- (void)startAnimation;
Expand Down
25 changes: 23 additions & 2 deletions ZGBarrage/ZGBarrage/ZGBarrage/View/ZGBarrageCell.m
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

#import "ZGBarrageCell.h"
#import "ZGBarrageView.h"
#import "ZGBarrageView.h"

#define Velocity 30.0

Expand All @@ -30,7 +31,6 @@ - (instancetype)initWithReusableIdentifier:(NSString *)identifer{
- (void)setupViews
{
self.imageView = [[UIImageView alloc] init];
self.imageView.image = [UIImage imageNamed:@"Zong.jpg"];
self.imageView.userInteractionEnabled = YES;
[self.imageView addGestureRecognizer:[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didPressImageView:)]];
[self addSubview:self.imageView];
Expand Down Expand Up @@ -89,11 +89,25 @@ - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
- (void)didPressImageView:(UITapGestureRecognizer *)tap
{
NSLog(@"didPressImageView");
if (self.barrageView.delegate && [self.barrageView.delegate respondsToSelector:@selector(barrageView:didSelectItemAtIndexPath:itemModel:)]) {
[self.barrageView.delegate barrageView:self.barrageView didSelectItemAtIndexPath:self.itemModel.indexPath itemModel:self.itemModel];
}

if (self.barrageView.delegate && [self.barrageView.delegate respondsToSelector:@selector(barrageView:didSelectItemImageViewWithItemModel:)]) {
[self.barrageView.delegate barrageView:self.barrageView didSelectItemImageViewWithItemModel:self.itemModel];
}
}

- (void)didPressTextLabel:(UITapGestureRecognizer *)tap
{
NSLog(@"didPressTextLabel");
if (self.barrageView.delegate && [self.barrageView.delegate respondsToSelector:@selector(barrageView:didSelectItemAtIndexPath:itemModel:)]) {
[self.barrageView.delegate barrageView:self.barrageView didSelectItemAtIndexPath:self.itemModel.indexPath itemModel:self.itemModel];
}

if (self.barrageView.delegate && [self.barrageView.delegate respondsToSelector:@selector(barrageView:didSelectItemTextLabelWithItemModel:)]) {
[self.barrageView.delegate barrageView:self.barrageView didSelectItemTextLabelWithItemModel:self.itemModel];
}
}

- (BOOL)pointInside:(CGPoint)point frame:(CGRect)frame
Expand All @@ -114,6 +128,13 @@ - (CGPoint)convertPoint:(CGPoint)point toFrame:(CGRect)frame
return CGPointMake(newX, newY);
}


#pragma mark - setter
- (void)setItemModel:(ZGBarrageItemModel *)itemModel
{
_itemModel = itemModel;

self.imageView.image = [UIImage imageNamed:@"Zong.jpg"];
self.textLabel.text = itemModel.text;
}

@end
2 changes: 2 additions & 0 deletions ZGBarrage/ZGBarrage/ZGBarrage/View/ZGBarrageView.h
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
#import "ZGBarrageFlowLayout.h"
#import "ZGBarrageItemModel.h"
#import "ZGEmitter.h"
#import "ZGBarrageViewDelegate.h"

@class ZGMagazine;

Expand All @@ -20,6 +21,7 @@

@interface ZGBarrageView : UIView

@property (nonatomic, weak) id <ZGBarrageViewDelegate> delegate;

@property (nonatomic, strong) ZGEmitter *emitter;

Expand Down
11 changes: 10 additions & 1 deletion ZGBarrage/ZGBarrage/ZGBarrage/View/ZGBarrageView.m
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,16 @@ - (NSInteger)totalCountOfItemModels
return self.dataSource.totalCount;
}

- (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
{
UIView *tmpView = [super hitTest:point withEvent:event];
if ( tmpView == self) {
return nil;
}else {
return tmpView;
}
}

#pragma mark - ZGBarrageCellAnimateDelegate
- (void)animationDidStopWithCell:(ZGBarrageCell *)cell
{
Expand Down Expand Up @@ -134,7 +144,6 @@ - (ZGBarrageCell *)emitter:(ZGEmitter *)emitter cellForItemAtIndexPath:(NSIndexP
cell.animateDelegate2 = self.emitter;
cell.minimumInteritemSpacing = ((ZGBarrageFlowLayout *)self.layout).minimumInteritemSpacing;
cell.itemModel = itemModel;
cell.textLabel.text = itemModel.text;

[self addSubview:cell];

Expand Down

0 comments on commit 70a8241

Please sign in to comment.