我有一个使用Xcode 3开发的应用程序,最近开始使用Xcode 4编辑.在目标摘要中,我有iOS应用程序目标表单,其中包含字段:标识符,版本,构建,设备和部署目标.版本字段为空白,构建字段为3.4.0(与我使用Xcode 3编辑时的应用程序版本相匹配).
我的问题是:
版本和构建字段有什么区别?
升级到Xcode 4后,为什么版本字段为空?
我想在嵌入式Google Map(API v3)上绘制一组点.除非缩放级别太低(即缩小太多),否则我希望能够容纳所有点.我的方法是这样的:
var bounds = new google.maps.LatLngBounds();
// extend bounds with each point
gmap.fitBounds(bounds);
gmap.setZoom( Math.max(6, gmap.getZoom()) );
Run Code Online (Sandbox Code Playgroud)
这不起作用.如果在fitBounds之后直接调用,则最后一行"gmap.setZoom()"不会更改地图的缩放级别.
有没有办法获得边界的缩放级别而不将其应用于地图?解决这个问题的其他想法?
我在这里阅读了很多关于NSManagedObjectContext和多线程应用程序的帖子.我还讨论了CoreDataBooks示例,以了解单独的线程如何需要自己的NSManagedObjectContext,以及保存操作如何与主NSManagedObjectContext合并.我发现这个例子很好,但也是应用程序特定的.我试图概括这一点,并想知道我的方法是否合理.
我的方法是使用通用函数来获取当前线程的NSManagedObjectContext.该函数返回主线程的NSManagedObjectContext,但如果从另一个线程中调用,则会创建一个新线程(或从缓存中获取它).具体如下:
+(NSManagedObjectContext *)managedObjectContext {
MyAppDelegate *delegate = (MyAppDelegate *)[[UIApplication sharedApplication] delegate];
NSManagedObjectContext *moc = delegate.managedObjectContext;
NSThread *thread = [NSThread currentThread];
if ([thread isMainThread]) {
return moc;
}
// a key to cache the context for the given thread
NSString *threadKey = [NSString stringWithFormat:@"%p", thread];
// delegate.managedObjectContexts is a mutable dictionary in the app delegate
NSMutableDictionary *managedObjectContexts = delegate.managedObjectContexts;
if ( [managedObjectContexts objectForKey:threadKey] == nil ) {
// create a context for this thread
NSManagedObjectContext *threadContext = [[[NSManagedObjectContext alloc] init] …
Run Code Online (Sandbox Code Playgroud) 我的应用程序中有一个UIPageControl,大约10页(点)看起来非常精细,但是用户可以添加许多不同的视图,因此点数可以说是30.
当这种情况发生时,点刚刚从屏幕边缘消失,你无法总是看到当前选中的页面,使它看起来很糟糕.
是否有任何方法可以使页面控制多行,或者在当前可见页面消失的情况下向左或向右移动它.
我有一个UIViewController子类,我试图弄清楚要覆盖什么,这样我每个对象实例只能运行一次初始化代码.
该viewDidLoad
方法可能看起来是明显的答案,但问题是,viewDidLoad
如果控制器由于内存警告而重置视图,则可能会运行多次.的initWithNibName:bundle:
,init
和initWithCoder:
方法也似乎是不错的选择,但覆盖哪一个?该awakeFromNib
方法是另一个考虑因素,但似乎没有在我的视图控制器中执行.
有没有办法做到这一点,我错过了?
我在Core Data图中有一对多关系,我试图理解使用CoreDataGeneratedAccessors方法和改变关系的简单赋值之间的区别.例如," 核心数据编程指南"有一个部门和员工示例.在该示例中,他们使用CoreDataGeneratedAccessors来雇佣和解雇员工:
[aDepartment addEmployeesObject:newEmployee];
[aDepartment removeEmployeesObject:firedEmployee];
Run Code Online (Sandbox Code Playgroud)
他们没有定义反向关系,但是说"部门"是与"雇员"的反向关系.以下应该完成相同的事情吗?
newEmployee.department = aDepartment
firedEmployee.department = nil;
Run Code Online (Sandbox Code Playgroud)
根据"核心数据编程指南" 的" 操作关系和对象图完整性"部分,后面的示例应自动修复所有关系以保持图形一致性.如果是这种情况,当存在反向关系时,是否有任何理由使用CoreDataGeneratedAccessors?使用CoreDataGeneratedAccessors是否在反向关系上保持图形一致性?
ios ×3
iphone ×3
core-data ×2
objective-c ×2
cocoa-touch ×1
fitbounds ×1
google-maps ×1
javascript ×1
xcode ×1