在开始之前,我应该告诉你,这只发生在iOS 5.1中.在最近的更新之前,这从未发生过,并且它仍然不会发生在任何其他版本上.那就是说,这是正在发生的事情.
当用户退出我的应用程序时,发生的一件事就是NSUserDefaults删除了所有内容.而不是手动删除我可能添加到用户默认值的每个键,我只是NSUserDefaults使用此SO问题中建议的方法完全删除所有键:
NSString *appDomain = [[NSBundle mainBundle] bundleIdentifier];
[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:appDomain];
Run Code Online (Sandbox Code Playgroud)
然而,似乎发生了什么,每次我尝试创建一个UIWebView删除后NSUserDefaults,我得到一个EXC_CRASH (SIGABRT).当我打电话时发生了崩溃[[UIWebView alloc] initWithFrame:frame].奇怪吧?完全退出并重新打开应用程序可以UIWebView再次创建s.
所以,我设法找出删除默认值会导致UIWebView问题,但可以肯定的是,我添加了一个符号断点-[NSUserDefaults setObject:forKey:].
![- [NSUserDefaults setObject:forKey:]断点](https://i.stack.imgur.com/0ODbq.png)
创建UIWebView确实会触发断点.
浏览崩溃日志给出了例外原因:
-[__NSCFDictionary setObject:forKey:]: attempt to insert nil value (key: WebKitLocalStorageDatabasePathPreferenceKey)
Run Code Online (Sandbox Code Playgroud)
这是堆栈跟踪的开始:
0 CoreFoundation 0x3340688f __exceptionPreprocess + 163
1 libobjc.A.dylib 0x37bd4259 objc_exception_throw + 33
2 CoreFoundation 0x33406789 +[NSException raise:format:] + 1
3 CoreFoundation 0x334067ab +[NSException raise:format:] + 35 …Run Code Online (Sandbox Code Playgroud) Instagram iOS应用程序的最新版本做了一些有趣的事情.在文本字段中写入(例如,发布评论)时,UIKeyboard的返回键已被两个键替换:@键和#键.这是一个截图:

我想知道他们是怎么做到的.据我所知,@和#钥匙表现得像普通键:他们的键盘消失通常不具有returnKey(如表情符号键盘),等等.
到目前为止我唯一想到的是应用程序获取UIKeyboard对子视图的循环,查找和隐藏returnKey,然后查找和移动@和#键.还有其他想法吗?
我正在尝试使用MongoDB作为数据库创建一个事件平台.我希望Events和之间有多对多的关系Users.问题是,我希望在关系中有属性(例如,Users可以确认或未确认具体Event).我意识到这将非常适合RDBMS,但我使用MongoDB的原因是我在其他地方利用它,我宁愿继续使用它.
我希望每个人Event都能嵌入许多Guests属于的人Users.这样,我可以看到哪些用户快速参加了一个事件并且只有一个查询.不过,我也想看看这Events一个User迅速出席,所以我想每一个User有数组EventIDS.
这是一个代码摘要.
# user of the application
class User
has_many :events
end
# event that users can choose to attend
class Event
embeds_many :guests
has_many :users, :through => :guests # Won't work
end
# guests for an event
class Guest
field :confirmed?, type: Boolean
embedded_in :event
belongs_to :user
end
# Ideal use pattern
u = User.create
e …Run Code Online (Sandbox Code Playgroud) ios ×2
objective-c ×2
activerecord ×1
instagram ×1
iphone ×1
mongodb ×1
mongoid ×1
uikeyboard ×1
uiwebview ×1