我正在使用Matt Gallagher GenericTableViewController控制我的想法UITableViews.我的数据源是NSFetchedResultsController.
http://cocoawithlove.com/2008/12/heterogeneous-cells-in.html
一切都运行正常,直到我尝试删除一个单元格.
我在View Controller中有以下代码:
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {
if (editingStyle == UITableViewCellEditingStyleDelete) {
// Delete the managed object.
NSManagedObjectContext *context = [wineryController managedObjectContext];
[context deleteObject:[wineryController objectAtIndexPath:indexPath]];
NSError *error;
if (![context save:&error]) {
// Handle the error.
}
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade];
}
}
Run Code Online (Sandbox Code Playgroud)
最后一行因控制台中相当冗长的解释而崩溃:
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid update: invalid number of rows in section 0. The number of rows contained in an …
我正在搞乱Core Data,我确信我错过了一些明显的东西,因为我找不到一个完全类似于我想要做的例子.
假设我正在玩DVD数据库.我有两个实体.电影(标题,年份,评级和与演员的关系)和演员(姓名,性别,图片).
获取所有电影很容易.只是:
NSEntityDescription *entity = [NSEntityDescription entityForName:@"Winery"
inManagedObjectContext:self.managedObjectContext];
Run Code Online (Sandbox Code Playgroud)
通过标题中的"Kill"获取所有电影很简单,我只需添加一个NSPredicate:
NSPredicate *predicate = [NSPredicate predicateWithFormat:
@"name LIKE[c] "*\"Kill\"*""];
Run Code Online (Sandbox Code Playgroud)
但Core Data似乎抽象出了托管对象的id字段......那么如何查询作为对象的属性(或:查询关系)?
换句话说,假设我已经有了我关注的Actor对象(例如[Object id 1 - 'Chuck Norris'),那么什么是"给我所有电影主演的谓词格式"[对象id 1 - 'Chuck Norris的]"?
在我的核心数据模型中,我有一个具有可选NSNumber属性的实体.
如何测试该属性中的值是否有效?
当我测试为零时......不起作用.
[self numberAttribute] == nil // always returns NO
Run Code Online (Sandbox Code Playgroud)
当我测试零值int时,这不起作用.
[[self numberAttribute] intValue] == 0 // always returns no
Run Code Online (Sandbox Code Playgroud)
事实上,[[self numberAttribute] intValue]]返回一些看起来像是指向内存地址的指针.
任何人都知道我做错了什么?
编辑:好的,错误是代码中完全不相关的部分.NSNumber和Core Data的功能完全符合预期.也就是说,我将采用建议的方法,使属性非可选,并指定0作为默认值.
对于正在观看这个问题的人来说,只需将此注释放在这里一段时间,然后我将其删除.
我是iphone编程的新手,所以如果你可以帮助我,我会很感激 - 我一直在网上,无法找到答案.
我目前的设置是这样的
MainWindow.xib中的导航控制器> MainWindow.xib中的导航控制器中的视图调用RootViewController.xib> RootViewController.xib包含单个tableview.
然后我可以使用RootViewController.m中的以下代码加载工具栏
UIBarButtonItem *buttonOne = [[UIBarButtonItem alloc] initWithTitle:@"One"
style:UIBarButtonItemStyleBordered target:self action:@selector(buttonOnePushed)];
UIBarButtonItem *buttonTwo = [[UIBarButtonItem alloc] initWithTitle:@"Two"
style:UIBarButtonItemStyleBordered target:self action:@selector(buttonTwoPushed)];
NSArray *barArray = [NSArray arrayWithObjects: buttonOne, buttonTwo, nil];
[buttonOne release];
[buttonTwo release];
[self setToolbarItems:barArray animated:YES];
[self.navigationController setToolbarHidden:NO animated:YES];
Run Code Online (Sandbox Code Playgroud)
此代码适用于按钮.但我无法为我的生活找到如何添加分段控件而不是按钮.我已经尝试了一个带有两个分段控件的数组,但是后来无法将数组添加到工具栏中.
如果有人能让我知道一些代码将以我用来添加按钮的相同方式添加分段控件我会非常感激.
谢谢,戴夫.
由于"当前项目目录"没有Xcode脚本变量,如何创建脚本菜单项以从Xcode在当前项目上运行Clang Static Analyzer?
假设我有一个Java类,它有100K的方法代码,包含NO变量,但只有20个字节的属性.
我从这个类中实例化了1000个对象.
我消耗了100,000K的内存吗?或者只有100K +(20bytes*1000)?还是别的什么?
我希望UIDatePicker视图的尺寸更小,与其相关.可以调整大小吗?
我安装了Xcode 6.0 beta并下载了iOS8库文档.但是当我创建一个Swift项目时,尝试输入代码
func aa(){
let format = NSDateFormatter()
var pageData = format.
}
Run Code Online (Sandbox Code Playgroud)
我发现Xcode不能点任何属性和功能.我错过了任何一步吗?
问题是解决,输入空格可以帮助代码完成
我正在用UITableView构建一个iPhone应用程序.在选择一行时,我希望在加载特定URL时推送UIWebView.
我目前有:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSDictionary * story = [stories objectAtIndex:[indexPath row]];
NSString * storyLink = [NSString stringWithFormat:[story objectForKey:@"link"]];
[[self navigationController] pushViewController:[[FirstViewController alloc] initWithNibName:@"FirstView" bundle:[NSBundle mainBundle]] animated:YES];
}
Run Code Online (Sandbox Code Playgroud)
如何通过以下方式获取滑入的新视图以包含UIWebView并随后将故事链接加载到其中:
loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:storyLink]]
Run Code Online (Sandbox Code Playgroud)
提前致谢,
石磊
iphone cocoa-touch objective-c uitableview uinavigationcontroller
我想将Twitter API集成到我的iphone应用程序中.我已经阅读了有关iPhone SDK 2.2的JSON框架.但我是这类应用程序的新手.任何人都可以解释如何将这个Twitter的API与我的应用程序集成以及如何使用它.另请告诉我如何打开"svn checkout http://json-framework.googlecode.com/svn/trunk/json-framework-只读"我已下载此代码,但我不知道从这里开始.请帮我解决这个问题.提前致谢.
雪豹xcode只安装3.1,3.0和2.2.1.我需要安装2.0才能用作特定应用的基本SDK.
我在安装映像的Packages目录中看到了iPhoneSDK2_0.pkg,但没有选项可以安装它...
我正在尝试编写更具可读性和更高效的代码,我总是讨厌如果是否如果链......是否有可能以其他更"优雅"的方式编写以下语句,例如使用三元操作:
if(text.length < 1){
if(errtext.length > 1){
errtext+="<br>";
}
errors = true;
errtext += "Field cannot be empty";
}
Run Code Online (Sandbox Code Playgroud)
谢谢
我们可以打开我们的应用程序,而无需再次点击其主页图标.
我正在一个地址簿应用程序中拨打电话,并且在拨打电话时打电话给电话应用程序,而不是在打电话后我们可以再次呼叫我们的应用程序,而不会在通话结束后点击它.
示例代码将更有帮助.
谢谢
iphone ×8
objective-c ×5
cocoa-touch ×4
xcode ×3
core-data ×2
uitableview ×2
clang ×1
cocoa ×1
controller ×1
java ×1
javascript ×1
macos ×1
navigation ×1
nsnumber ×1
refactoring ×1
swift ×1
toolbar ×1
twitter ×1