Comments (11)
在cell复用时候越来越大 wBannerControlSelectMargin 属性累加了
看了下没有累加哦 你是cell初始化的时候加上去的吗
from wmzbanner.
用的懒加载方式,可能表达有误,是pagecontrol的dot的frame越来越大,造成看着离的越来越远,原因是 pagecontrol的frame 第二次时候已经不是你初始化的原来frame了,我在- (void)resetCollection{
self.bannerControl.frame = CGRectMake((self.bounds.size.width - 60)/2 , self.bounds.size.height - 30,60, 30);
self.bannerControl.numberOfPages = self.data.count;
self.bannerControl.hidden = self.param.wHideBannerControl;
if (self.data.count == 1) {
self.bannerControl.hidden = YES;
}
第一行加了下代码 就没问题了
from wmzbanner.
cell 里面使用该控件的代码
if (!kArrayIsEmpty(model.selectImage)) {
self.param.wDataSet([model.selectImage valueForKeyPath:@"imgPath"]);
BOOL hasOne = (self.param.wData.count == 1) ;
CGFloat height = hasOne ? CYScaleW_Precise(240) : CYScaleW_Precise(240 + 26);
[self.contentV mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(height).priorityHigh();
}];
self.contentV.hidden = false;
self.param.wSelectIndexSet(model.currentPageIndex);
self.param.wRepeatSet(hasOne ? false : true);
}else{
self.param.wDataSet(@[]);
[self.contentV mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(0).priorityHigh();
}];
self.contentV.hidden = true;
}
[self.cycleView updateUI];
// [self.cycleView makeScrollViewScrollToIndex:model.currentPageIndex];
}
-
(WMZBannerView *)cycleView{
if (!_cycleView) {
_cycleView =[[WMZBannerView alloc] initConfigureWithModel:self.param] ;
// _cycleView.delegate = self;
}
return _cycleView;
}
-
(WMZBannerParam *)param{
if (!_param) {
_param =[[WMZBannerParam alloc] init] ;
_param.wBannerControlColorSet(UIColorHex(d8d8d8));
_param.wBannerControlSelectColorSet(NLMainColor);
_param.wRepeatSet(YES);
_param.wFrameSet(CGRectMake(0, 0, CYScreenW, CYScaleW_Precise(240)));
_param.wPlaceholderImageSet(@"mine_dynamic_4");
// _param.wBannerControlImageSizeSet(CGSizeMake(10, 10));
// _param.wBannerControlSelectImageSizeSet(CGSizeMake(10, 10));
_param.wBannerControlSelectMarginSet(10);
_param.wCustomControl = ^(UIControl *pageControl) {
pageControl.cy_y = CYScaleW_Precise(240);
};}
return _param;
}
from wmzbanner.
cell 里面使用该控件的代码
if (!kArrayIsEmpty(model.selectImage)) { self.param.wDataSet([model.selectImage valueForKeyPath:@"imgPath"]); BOOL hasOne = (self.param.wData.count == 1) ; CGFloat height = hasOne ? CYScaleW_Precise(240) : CYScaleW_Precise(240 + 26); [self.contentV mas_updateConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(height).priorityHigh(); }]; self.contentV.hidden = false; self.param.wSelectIndexSet(model.currentPageIndex); self.param.wRepeatSet(hasOne ? false : true); }else{ self.param.wDataSet(@[]); [self.contentV mas_updateConstraints:^(MASConstraintMaker *make) { make.height.mas_equalTo(0).priorityHigh(); }]; self.contentV.hidden = true; } [self.cycleView updateUI]; // [self.cycleView makeScrollViewScrollToIndex:model.currentPageIndex];
}
- (WMZBannerView *)cycleView{
if (!_cycleView) {
_cycleView =[[WMZBannerView alloc] initConfigureWithModel:self.param] ;
// _cycleView.delegate = self;
}
return _cycleView;}
- (WMZBannerParam *)param{
if (!_param) {
_param =[[WMZBannerParam alloc] init] ;
_param.wBannerControlColorSet(UIColorHex(d8d8d8));
_param.wBannerControlSelectColorSet(NLMainColor);
_param.wRepeatSet(YES);
_param.wFrameSet(CGRectMake(0, 0, CYScreenW, CYScaleW_Precise(240)));
_param.wPlaceholderImageSet(@"mine_dynamic_4");
// _param.wBannerControlImageSizeSet(CGSizeMake(10, 10));
// _param.wBannerControlSelectImageSizeSet(CGSizeMake(10, 10));
_param.wBannerControlSelectMarginSet(10);
_param.wCustomControl = ^(UIControl *pageControl) {
pageControl.cy_y = CYScaleW_Precise(240);
};
}
return _param;}
哦 你这是在cell的时候调用了刷新是吧。 是的 那就重新需要reset的时候再设置一下control的frame可解决
from wmzbanner.
是的,我的cell里面都是这种轮播图,数据每行都会变,怎么重新设置frame 用哪个方法啊_param.wCustomControl = ^(UIControl *pageControl) {
pageControl.cy_y = CYScaleW_Precise(240);
};这个么
from wmzbanner.
或者是我使用姿势有误吗,在tableviewcell 复用时候,每个控件数据不同情况下,我该调用updateUI吗
from wmzbanner.
或者是我使用姿势有误吗,在tableviewcell 复用时候,每个控件数据不同情况下,我该调用updateUI吗
cell的时候使用少 应该是要调用的updateUI的 用你加的那个代码就行了 wCustomControl应该不行
from wmzbanner.
下次更新可以把代码带上吗,我现在用改源码方式使用
from wmzbanner.
下次更新可以把代码带上吗,我现在用改源码方式使用
GitHub带上了 pod还没更新
from wmzbanner.
好的,辛苦了
from wmzbanner.
!
from wmzbanner.
Related Issues (20)
- 链式语法有个很大的问题,就是如果对象是nil,调用block会crash HOT 1
- 拖拽结束,点击没有反应 HOT 3
- 图片过多滑动到最后一张图片问题 HOT 3
- 如何调整pagecontrol 和cell 之间距离 HOT 2
- 1.2.0 wCustomControlSet frame 失效 HOT 5
- 设置成如下样式,滚动方向错误 HOT 2
- 宽度如何压缩
- 请问如何向左边自动滑? HOT 3
- 数组越界:*** -[__NSArrayI objectAtIndexedSubscript:]: index 1753 beyond bounds [0 .. 6] HOT 1
- 叠加式卡片轮播 (纵向) 的层级展示可以放到上面嘛 HOT 1
- 如何在滚动结束后获取最中间的 cell 或者index?
- 手势过大 会同时滚动很多张 如何只滚动一张? HOT 2
- 设计不合理,提出自己几点建议 HOT 3
- 一个轮播图里有多个自定义cell该如何设置 HOT 1
- 请问下老哥堆叠的样式,怎么才能滑动时,当前的page不放大? HOT 2
- 首次进入调用 - (void)scrolToPath:(NSIndexPath*)path animated:(BOOL)animated滚动错乱
- wPositionSet 置地有些问题想请教一下
- Swift 链式使用问题
- 无法使用Swift创建的UICollectionViewCell
- 叠加样式滚到到最后一个没有被放大,再划一下才能放大
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from wmzbanner.