- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
首先,抱歉问题的长度。但我一直在寻找答案。我在一个包含两个 UIScrollView 的选项卡式应用程序中创建了一个 View 。我称它们为 topScrollView 和 bottomScrollView。这是.h。
@property (weak, nonatomic) IBOutlet UIScrollView *topScrollView;
@property (weak, nonatomic) IBOutlet UIScrollView *bottomScrollView;
_golfShirtArray = [NSArray arrayWithObjects:
[UIImage imageNamed:@"GT018B-RSB-5961.jpg"],
[UIImage imageNamed:@"GT042-HDT-7234.jpg"],
[UIImage imageNamed:@"gt063-rst-7294.jpg"],
[UIImage imageNamed:@"GT045-CBT3-7203.jpg"],
[UIImage imageNamed:@"GT018-SDT-5971.jpg"],
nil];
- (void)loadVisiblePages
{
CGFloat pageWidth = 528.0f;
NSInteger page = (NSInteger)floor((_topScrollView.contentOffset.x * 2.0f + pageWidth) / (pageWidth * 2.0f));
_topPageControl.currentPage = page;
NSInteger firstPage = page - 1;
NSInteger lastPage = page + 1;
for (NSInteger i = 0; i < firstPage; i++)
{
[self purgePage:i];
}
for (NSInteger i = firstPage; i <= lastPage; i++)
{
[self loadPage:i];
}
for (NSInteger i = lastPage+1; i < _showablePictureArray.count; i++)
{
[self purgePage:i];
}
}
- (void)loadPage:(NSInteger)page
{
if (page < 0 || page >= _showablePictureArray.count)
{
return;
}
UIView *pageView = [_pageViews objectAtIndex:page];
if ((NSNull *)pageView == [NSNull null])
{
CGRect frame = CGRectMake(120, 93, 528, 380); //_topScrollView.bounds;
//NSLog(@"scrollviewbounds is %@", NSStringFromCGRect(frame));
frame.origin.x = frame.size.width * page;
frame.origin.y = 0.0f;
UIImageView *newPageView = [[UIImageView alloc] initWithImage:[_showablePictureArray objectAtIndex:page]];
newPageView.contentMode = UIViewContentModeScaleAspectFit;
newPageView.frame = frame;
[_topScrollView addSubview:newPageView];
[_pageViews replaceObjectAtIndex:page withObject:newPageView];
CGFloat y = 0.0;
for (NSInteger i = 0; i < _showablePictureArray.count; i++)
{
UILabel *descriptionLabel = [[UILabel alloc] initWithFrame:CGRectMake(y, 0, 200.0, 20.0)];
UILabel *priceLabel = [[UILabel alloc] initWithFrame:CGRectMake(y, 23.0, 200.0, 20.0)];
NSString *text1 = [_showableDescriptionArray objectAtIndex:i];
NSString *text2 = [_showablePriceArray objectAtIndex:i];
[descriptionLabel setText:text1];
[priceLabel setText:text2];
descriptionLabel.layer.borderWidth = 2.0f;
descriptionLabel.layer.borderColor = [UIColor lightGrayColor].CGColor;
descriptionLabel.layer.cornerRadius = 6.0f;
priceLabel.layer.borderWidth = 2.0f;
priceLabel.layer.borderColor = [UIColor lightGrayColor].CGColor;
priceLabel.layer.cornerRadius = 6.0f;
[_topScrollView addSubview:descriptionLabel];
[_topScrollView addSubview:priceLabel];
y = y + 528;
}
}
}
- (void)purgePage:(NSInteger)page
{
if (page < 0 || page >= _showablePictureArray.count)
{
return;
}
UIView *pageView = [_pageViews objectAtIndex:page];
if ((NSNull *)pageView != [NSNull null])
{
[pageView removeFromSuperview];
[_pageViews replaceObjectAtIndex:page withObject:[NSNull null]];
}
}
- (void)loadVisiblePagesBottom
{
CGFloat pageWidthBottom = 528.0f;
NSInteger pageBottom = (NSInteger)floor((_bottomScrollView.contentOffset.x * 2.0f + pageWidthBottom) / (pageWidthBottom * 2.0f));
NSLog(@"page bottom is %ld", (long)pageBottom);
_bottomPageControl.currentPage = pageBottom;
NSInteger firstPageBottom = pageBottom -1;
NSInteger lastPageBottom = pageBottom +1;
for (NSInteger i = 0; i < firstPageBottom; i++)
{
[self purgePageBottom:i];
}
for (NSInteger i = firstPageBottom; i <= lastPageBottom; i++)
{
[self loadPageBottom:i];
}
for (NSInteger i = lastPageBottom + 1; i < _showablePictureArrayBottom.count; i++)
{
[self purgePageBottom:i];
}
}
- (void)loadPageBottom:(NSInteger)pageBottom
{
NSLog(@"page bottom 2 is %ld", (long)pageBottom);
if (pageBottom < 0 || pageBottom >= _showablePictureArrayBottom.count)
{
return;
}
UIView *pageViewBottom = [_pageViewsBottom objectAtIndex:pageBottom];
if ((NSNull *)pageViewBottom == [NSNull null])
{
CGRect frameBottom = CGRectMake(120, 482, 528, 380);
frameBottom.origin.x = frameBottom.size.width * pageBottom;
frameBottom.origin.y = 0.0f;
UIImageView *bottomView = [[UIImageView alloc] initWithImage:[_showablePictureArrayBottom objectAtIndex:pageBottom]];
//UIImageView *bottomView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"GB007-SPD-5918.jpg"]];
bottomView.contentMode = UIViewContentModeScaleAspectFit;
bottomView.frame = frameBottom;
[_bottomScrollView addSubview:bottomView];
[_pageViewsBottom replaceObjectAtIndex:pageBottom withObject:bottomView];
}
}
- (void)purgePageBottom:(NSInteger)pageBottom
{
if (pageBottom < 0 || pageBottom >= _showablePictureArrayBottom.count)
{
return;
}
UIView *pageViewBottom = [_pageViewsBottom objectAtIndex:pageBottom];
if ((NSNull *)pageViewBottom != [NSNull null])
{
[pageViewBottom removeFromSuperview];
[_pageViewsBottom replaceObjectAtIndex:pageBottom withObject:[NSNull null]];
}
}
_golfShortsArray = [NSArray arrayWithObjects:
[UIImage imageNamed:@"GB005-nvy-7235.jpg"],
[UIImage imageNamed:@"GB005-RSB-7297.jpg"],
[UIImage imageNamed:@"gb007-bgm-7320.jpg"],
[UIImage imageNamed:@"GB007-NVY-5916.jpg"],
[UIImage imageNamed:@"GB007-SPD-5918.jpg"],
nil];
[__NSCFConstantString _isDecompressing]: unrecognized selector sent to instance 0x72668
* thread #1: tid = 0x2503, 0x3ad79498 libc++abi.dylib`__cxa_throw, stop reason = breakpoint 1.2
frame #0: 0x3ad79498 libc++abi.dylib`__cxa_throw
frame #1: 0x3b32b9be libobjc.A.dylib`objc_exception_throw + 94
frame #2: 0x33498e06 CoreFoundation`-[NSObject(NSObject) doesNotRecognizeSelector:] + 170
frame #3: 0x33497530 CoreFoundation`___forwarding___ + 392
frame #4: 0x333eef68 CoreFoundation`__forwarding_prep_0___ + 24
frame #5: 0x352f966a UIKit`-[UIImageView initWithImage:] + 66
frame #6: 0x0006d9d4 JoFitTest`-[SecondViewController loadPageBottom:](self=0x1e575840, _cmd=0x0006f25e, pageBottom=0) + 456 at SecondViewController.m:358
frame #7: 0x0006d788 JoFitTest`-[SecondViewController loadVisiblePagesBottom](self=0x1e575840, _cmd=0x0006f236) + 388 at SecondViewController.m:334
frame #8: 0x0006d238 JoFitTest`-[SecondViewController scrollViewDidScroll:](self=0x1e575840, _cmd=0x357119e4, scrollView=0x1e5a5c50) + 164 at SecondViewController.m:286
frame #9: 0x352bf83a UIKit`-[UIScrollView setContentOffset:] + 618
frame #10: 0x353da138 UIKit`-[UIScrollView _updatePanGesture] + 2456
frame #11: 0x353bad88 UIKit`_UIGestureRecognizerSendActions + 128
frame #12: 0x353bad88 UIKit`_UIGestureRecognizerSendActions + 128
frame #13: 0x353823f4 UIKit`-[UIGestureRecognizer _updateGestureWithEvent:] + 392
frame #14: 0x3556fa38 UIKit`___UIGestureRecognizerUpdate_block_invoke_0543 + 48
frame #15: 0x352a682e UIKit`_UIGestureRecognizerRemoveObjectsFromArrayAndApplyBlocks + 218
frame #16: 0x352a5292 UIKit`_UIGestureRecognizerUpdate + 1274
frame #17: 0x352b01e6 UIKit`-[UIWindow _sendGesturesForEvent:] + 766
frame #18: 0x352afdb2 UIKit`-[UIWindow sendEvent:] + 90
frame #19: 0x3529d800 UIKit`-[UIApplication sendEvent:] + 380
frame #20: 0x3529d11a UIKit`_UIApplicationHandleEvent + 6154
frame #21: 0x36f915a2 GraphicsServices`_PurpleEventCallback + 590
frame #22: 0x36f911d2 GraphicsServices`PurpleEventCallback + 34
frame #23: 0x3346a172 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 34
frame #24: 0x3346a116 CoreFoundation`__CFRunLoopDoSource1 + 138
frame #25: 0x33468f98 CoreFoundation`__CFRunLoopRun + 1384
frame #26: 0x333dbebc CoreFoundation`CFRunLoopRunSpecific + 356
frame #27: 0x333dbd48 CoreFoundation`CFRunLoopRunInMode + 104
frame #28: 0x36f902ea GraphicsServices`GSEventRunModal + 74
frame #29: 0x352f1300 UIKit`UIApplicationMain + 1120
frame #30: 0x0006a034 JoFitTest`main(argc=1, argv=0x2fd98d00) + 116 at main.m:16
frame #31: 0x3b762b20 libdyld.dylib`start + 4
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
if (scrollView == _topScrollView)
{
[self loadVisiblePages];
}else if (scrollView == _bottomScrollView)
{
NSLog(@"Bottom Scroll");
[self loadVisiblePagesBottom];
}
}
最佳答案
问题是 _showablePictureArrayBottom 中包含字符串而不是图像。
我可以从错误消息中看出这一点:
[__NSCFConstantString _isDecompressing]: unrecognized selector sent to instance 0x72668
__NSCFConstantString
是与
NSString
相关的类簇之一.当您为变量分配了错误的类型,或者您有一个过早的释放时,您将得到这个。
关于iphone - 两个 UIScrollViews 得到 [__NSCFConstantString _isDecompressing] 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18532658/
在 C# 及其同类语言中,我们总是使用 public string SomeString { get; set;} 但是你也可以使用(我最近才发现这个,而且是在和编译器闲逛的时候发现的) public
我已经为 Controller 中的函数编写了 Swagger 注释,但在生成 swagger-ui 代码时出现错误。以下是我的注释代码 /*** End of Annotation For dele
我正在 PHP 中开发一项服务,该服务使用 exec 函数调用 jar 文件,如下所示: $text = "string with accents á, ó, ú or العربية"; exec(
我正在尝试了解有关在程序中利用/防止缓冲区溢出的方法的更多信息。我知道如果大小是恒定的,下面的代码很容易受到攻击,但是如果大小每次都是随机的怎么办?是否还有办法从堆栈中获取它并以某种方式动态改变溢出字
对于一项学校作业,我应该制作一个可以以小时、分钟和秒为单位存储时间的时间类。一切正常,但仅声明 get 时属性总是返回 0;并设置; private int seconds, minutes, hou
我正在遍历一些测验对象并将结果存储到json变量中。出现"ReferenceError is not defined"错误,不确定原因。 JS代码 // This function will send
使用 Nifi 的 PutDatabaseRecord 处理器在 MySQL 中插入阿拉伯字符(非拉丁语)时,字符被“??????”替换 插入后,阿拉伯字符串被替换为??????。我已经使用 utf8
谁能告诉我为什么 gets(abc) 使用 char[] 而不是使用 int? int abc; char name[] = "lolrofl"; printf("Hello %s.\n",na
为什么在使用 as.POSIXct 转换下面的时间戳时得到所有 NA? > head(tmp$timestamp_utc) [1] Fri Jul 03 00:15:00 EDT 2015 Fri J
def get_submultiples(n): # Get all submultiples of n if n == 1: return [1] i = 2
有没有办法访问基本模型的实际 child ,意思是:继续使用 django Docs 中的示例,让我们假设我正在建模不同的外卖餐厅,它们只是有共同点 姓名 都有deliver方法 至此: class
我正在寻找一个范围的总和,但我总是得到“未定义”。我相信有些东西出现在错误的位置,但我不确定它是什么。 第 1 部分:“编写一个范围函数,它接受两个参数(start 和 end),并返回一个包含从 s
我已将 spring 版本从 4.2.3 更新到 5.0.2,并将安全性从 5.0.1 更新到 5.0.10 并使用 spring -flex版本1.6.0.RC1。 像这样使用 BlazeDS 依赖
我可以输入但在输出中,我得到的结果为零。我使用两门类(class),一门是主要的,是日志,另一门是成绩计算。在成绩计算器中,我编写了方法和构造函数,在日志中,类通过构造函数调用这些方法。 import
我在使用 go 时遇到了构建问题。我想知道这是编译器中的错误还是代码的问题。 // removed the error handling for sake of clarity file, _ :=
我的角色在与盒子互动时出现问题。我有一个 GameObject Player 附加了一个脚本来与游戏中的盒子交互,脚本是: using UnityEngine; using System.Collec
有谁知道为什么我不能在下面生成百分比 codeIshere (第 97-117 行)? var format=d3.format(".1%"); var percent = format(functi
我正在尝试编写图像识别代码,以针对不同动物图像训练系统,这就是代码。我使用 anaconda 作为解释器,使用pycharm作为环境。 import tensorflow as tf import o
我正在尝试在 Java 中初始化 Matcher,但无论字符串是否已初始化且不为 null,都会继续获取 NPE。 这是代码: pattern.compile("\\s"); System.out.p
所以我有这段代码: ; (function (g) { var d = document, i, am = d.createElement('script'), h = d.head || d.g
我是一名优秀的程序员,十分优秀!