我正在尝试滚动到集合视图中的特定项目,它似乎在90%的时间内正常发生.我基本上有一个集合视图,其框架我通过自动布局更改,然后我希望我的单元格是所有新框架的大小,所以我设置了一个新的大小.当我在scrollToItemAtIndexPath上放置一个断点时,它似乎在工作时项目大小已经生效,但是它不起作用的时间,单元格仍然具有旧的大小.如何在滚动之前确保itemSize已更改?
[weakSelf.view removeConstraints:@[weakSelf.verticalSpace, weakSelf.collectionViewBottomSpace, weakSelf.bottomLayoutTopCollectionView]];
[weakSelf.view addConstraints:@[weakSelf.collectionViewToTop, weakSelf.imageHeight, weakSelf.youLabelToTop]];
[UIView animateWithDuration:animated ? .5 : 0.0
animations:^{
[weakSelf.view layoutIfNeeded];
}
completion:^(BOOL finished) {
UICollectionViewFlowLayout * layout = (UICollectionViewFlowLayout *)self.currentUserCollectionView.collectionViewLayout;
layout.itemSize = weakSelf.currentUserCollectionView.frame.size;
[weakSelf.currentUserCollectionView scrollToItemAtIndexPath:[NSIndexPath indexPathForRow:[self getSelectedIndex:selectItem] inSection:0]
atScrollPosition:UICollectionViewScrollPositionCenteredHorizontally
animated:NO];
}];
Run Code Online (Sandbox Code Playgroud) 我有以下配置从WIX删除和复制文件.
<Directory Id='TARGETDIR' Name='SourceDir'>
<Directory Id="AppDataFolder" Name="AppDataFolder">
<Directory Id="GleasonAppData" Name="Gleason" >
<Directory Id="GleasonStudioAppData" Name="GleasonStudio">
<Directory Id="DatabaseAppData" Name ="Database">
<Directory Id="UserSandboxesAppData" Name="UserSandboxes" />
</Directory>
</Directory>
</Directory>
</Directory>
</Directory>
<DirectoryRef Id="UserSandboxesAppData">
<Component Id="comp_deleteBackup" Guid="*">
<RemoveFile Id="RemoveBackup" Directory="UserSandboxesAppData"
Name="DevelopmentBackUp.FDB" On="install" />
<RegistryKey Root="HKCU" Key="Software\Gleason\Database\RemoveBackup">
<RegistryValue Value="Removed" Type="string" KeyPath="yes" />
</RegistryKey>
</Component>
<Component Id="comp_createBackup" Guid="*">
<CopyFile Id="DBBackup"
DestinationDirectory="UserSandboxesAppData"
DestinationName="DevelopmentBackUp.FDB"
SourceDirectory="UserSandboxesAppData"
SourceName="Development.FDB" />
<RegistryKey Root="HKCU" Key="Software\Gleason\Database\CopyBackup">
<RegistryValue Value="Copied" Type="string" KeyPath="yes" />
</RegistryKey>
</Component>
</DirectoryRef>
Run Code Online (Sandbox Code Playgroud)
我得到4个与ICE64相关的错误 - 目录"xxx"在用户配置文件中,但未在RemoveFile表中列出.xxx = {UserSandboxesAppData,DatabaseAppData,GleasonStudioAppData,GleasonAppData}其他人在此处遇到了类似的问题:目录xx在用户配置文件中,但未在RemoveFile表中列出..但那个解决方案对我没有帮助.
我需要改变什么?
谢谢你,Venkat Rao
我正在autolayout改变我的身高scrollview.我加一些subviews到scrollview那里我手动增加内容大小.但当我得到一个我要改变高度的事件时,内容大小为零.
这是代码:
-(void) addTag:(NSString *)tagName {
...
[button addTarget:self action:@selector(tagPressed:) forControlEvents:UIControlEventTouchUpInside];
[self setContentSize:CGSizeMake(self.frame.size.width, self.contentSize.height+60)];
[self.items addObject: button];
NSLog(@"content height: %0.2f", self.contentSize.height);
}
Run Code Online (Sandbox Code Playgroud)
控制台输出:
2013-04-18 18:23:06.106 TouchSelectApp[19944:c07] content height: 120.00
Run Code Online (Sandbox Code Playgroud)
这里我输出contentSize:
- (void)tagPressed:(UIButton *)sender {
NSLog(@"1 content height: %0.2f", self.contentSize.height);
...
}
Run Code Online (Sandbox Code Playgroud)
控制台显示:
2013-04-18 18:17:24.747 TouchSelectApp[19944:c07] 1 content height: 0.00
Run Code Online (Sandbox Code Playgroud)
我不知道为什么内容高度设置为零.帮我!
更新:这是我想解决的问题.
我有一个带按钮的滚动视图.最初它只显示一个按钮.按下按钮时,将调用tagPressed:.Tag Pressed更改高度以显示所有按钮.然后,当用户选择按钮时,滚动视图的高度将更改为原始高度,并且偏移量将设置为按钮的原点.以下代码有效,但动画完全错误.如果我更改偏移量并在动画块之前,则只将偏移量设置为零.
- (void)tagPressed:(UIButton *)sender {
CGPoint p;
float maxHeight = self.items.count * 60;
if (self.height.constant == maxHeight) {
self.height.constant = …Run Code Online (Sandbox Code Playgroud) 我在故事板中使用自动布局来定位UICollectionView.我在Top Layout Guide和CollectionView之间创建了一个垂直间距.但是集合视图仍然从导航栏下方开始.甚至原型单元也有额外的填充.请看下面的图片.
界面生成器:

模拟器视图:

内容应从导航栏下方开始,但在用户滚动时,内容应位于导航栏下方.我该如何做到这一点?
我一直遇到状态栏和标签栏的问题.
这是我的代码:
self.searchResultsController = [BZDashboardSearchResultsController new];
self.searchController = [[UISearchController alloc] initWithSearchResultsController:self.searchResultsController];
self.searchController.hidesBottomBarWhenPushed = YES;
self.searchController.searchResultsUpdater = self;
self.searchController.hidesNavigationBarDuringPresentation = YES;
self.definesPresentationContext = YES;
self.searchController.dimsBackgroundDuringPresentation = NO;
self.searchController.view.backgroundColor = [UIColor whiteColor];
self.searchController.delegate = self;
self.searchController.searchBar.delegate = self;
[self presentViewController:self.searchController
animated:YES
completion:nil];
Run Code Online (Sandbox Code Playgroud)
我想隐藏标签栏,将搜索栏放在状态栏下.我的视图控制器层次结构如下所示:
UITabBarController
--UINavigationController
---View Controller where the above code is executed.
Run Code Online (Sandbox Code Playgroud)
在我的app委托中,我将我的UITabBarController子类设置为根视图控制器:
self.window.rootViewController = tabBarViewController;
Run Code Online (Sandbox Code Playgroud)
子类的init方法是这样的:
-(instancetype)init {
self = [super init];
if (self) {
UINavigationController *workspaceNavigationController = [[UINavigationController alloc] initWithRootViewController:self.workspaceController];
self.userProfileViewController.showLogoutButton = YES;
UINavigationController *userProfileNavigationController = [[UINavigationController alloc] initWithRootViewController:self.userProfileViewController]; …Run Code Online (Sandbox Code Playgroud) 我得到这个例外:
2012-10-11 14:27:05.039 SunriseAlarm [2297:907]***由于未捕获的异常'NSInvalidArgumentException'终止应用程序,原因:' - [PickerViewController _setViewDelegate:]:无法识别的选择器发送到实例0x1e56fff0'
我在appDelegate.m文件中有这个代码
PickerViewController *pvc = [[PickerViewController alloc] initWithNibName:@"PickerView" bundle:nil];
self.window.rootViewController = pvc;
我已经将nib的类设置为自定义类,而不是UIViewController.请看下面的图片.

请让我知道你认为我做错了什么.
谢谢,
Venkat Rao
这个问题源于我不完全理解iOS中的静态库,而谷歌的文档似乎有点稀疏.
我正在尝试将Google Cloud Endpoints用于我的移动后端.
我为我的客户端库生成.m和.h文件.然后我创建了一个新项目(OwnItApi),将libGTLTouchStaticLib.a静态库从GTL.proj拖到这个新项目中.然后我将生成的文件.m和.h文件添加到此项目中.我将所有.m文件添加到编译源,然后我将头文件复制文件.在构建设置中,我将"-ObjC -all_load"添加到Other Linker Flags项目.
更新:我忘了提到我还将GTL.proj中的头文件复制到了OwnItAPI项目中.这些包括文件GTLBase64.h,GTLBatchQuery.h,GTLBatchResult,h等.我想我必须这样做,因为没有它们的构建失败了.
没有标题,我得到:错误"'找不到GTLObject.h'文件." 在进口声明中.
然后我从这个项目生成静态库,并将其添加到我的主项目,其目标是一个iPhone应用程序.为了测试API是否正常工作,我将其添加到App Delegate
#import "OwnItApi/GTLServiceOwnit.h"
#import "OwnItApi/GTLQueryOwnit.h"
#import "OwnItApi/GTLOwnitApiBrands.h"
Run Code Online (Sandbox Code Playgroud)
这是在应用程序内:didFinishLaunchingWithOptions:function
static GTLServiceOwnit *service = nil;
if (!service) {
service = [[GTLServiceOwnit alloc] init];
service.retryEnabled = YES;
[GTMHTTPFetcher setLoggingEnabled:YES];
}
GTLQueryOwnit *query = [GTLQueryOwnit queryForBrandsListWithUserID:@"venkat"];
[service executeQuery:query completionHandler:^(GTLServiceTicket *ticket, GTLOwnitApiBrands *object, NSError *error) {
NSArray *items = [object brands];;
NSLog(@"%@", items);
}];
Run Code Online (Sandbox Code Playgroud)
当我编译时,我得到这样的重复错误:
duplicate symbol _OBJC_METACLASS_$_GTLOwnitApiBrand in:
/Users/vrao/Library/Developer/Xcode/DerivedData/Own_It!-ertvnctptaddricdrjyrmgemzgsh/Build/Products/Release-iphoneos/libOwnItApi.a(GTLOwnit_Sources.o)
Run Code Online (Sandbox Code Playgroud)
17个错误看起来就像那样.然后最后
clang: error: linker command failed with exit code 1 (use -v …Run Code Online (Sandbox Code Playgroud) 我有这个非常简单的python代码来读取维基百科api的xml:
import urllib
from xml.dom import minidom
usock = urllib.urlopen("http://en.wikipedia.org/w/api.php?action=query&titles=Fractal&prop=links&pllimit=500")
xmldoc=minidom.parse(usock)
usock.close()
print xmldoc.toxml()
Run Code Online (Sandbox Code Playgroud)
但是这段代码会返回以下错误:
Traceback (most recent call last):
File "/home/user/workspace/wikipediafoundations/src/list.py", line 5, in <module><br>
xmldoc=minidom.parse(usock)<br>
File "/usr/lib/python2.6/xml/dom/minidom.py", line 1918, in parse<br>
return expatbuilder.parse(file)<br>
File "/usr/lib/python2.6/xml/dom/expatbuilder.py", line 928, in parse<br>
result = builder.parseFile(file)<br>
File "/usr/lib/python2.6/xml/dom/expatbuilder.py", line 207, in parseFile<br>
parser.Parse(buffer, 0)<br>
xml.parsers.expat.ExpatError: syntax error: line 1, column 62<br>
Run Code Online (Sandbox Code Playgroud)
我不知道我刚刚学习python.有没有办法让错误更详细?有谁知道解决方案?另外,请推荐一种更好的语言来完成此操作.
谢谢你,
Venkat Rao
我的应用引擎应用中有异常处理.代码在开发服务器上完美运行.但是当我在app引擎服务器上传文件时,出现语法错误.
这是追溯:
Exception in request:
Traceback (most recent call last):
File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/core/handlers/base.py", line 68, in get_response
callback, callback_args, callback_kwargs = resolver.resolve(request.path)
File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/core/urlresolvers.py", line 162, in resolve
sub_match = pattern.resolve(new_path)
File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/core/urlresolvers.py", line 118, in resolve
return self.callback, args, kwargs
File "/base/python_runtime/python_lib/versions/third_party/django-0.96/django/core/urlresolvers.py", line 125, in _get_callback
self._callback = getattr(__import__(mod_name, {}, {}, ['']), func_name)
File "/base/data/home/apps/foundationofwikipedia/1-1.345018280774164953/src/views.py", line 6, in <module>
import search_list
File "/base/data/home/apps/foundationofwikipedia/1-1.345018280774164953/src/search_list.py", line 32
except Exception as error:
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
我不明白这一点,因为代码在开发服务器中工作正常.这可能是微不足道的.救命!
ios ×6
python ×2
autolayout ×1
django ×1
installer ×1
ios6 ×1
objective-c ×1
uikit ×1
uiscrollview ×1
wikipedia ×1
wix ×1
xcode ×1
xml ×1