Iphone UITextField在iOS 5中导致崩溃,在iOS 4中工作正常

Iphone UITextField在iOS 5中导致崩溃,在iOS 4中工作正常,iphone,objective-c,ios,Iphone,Objective C,Ios,我有一个非常奇怪的问题,如果我点击一个UITextField,我的应用程序中的任何UITextField都会因以下错误而崩溃: 0\u CreateCachePathEmbedded(\uu CFString常量*,无符号字符) 0x0246ac4f mov(%esi),%esi 线程5 WebThread:程序接收到信号:“EXC\u坏访问” 我尝试在interface builder中添加一个未链接到任何内容的UITextField,但仍然遇到相同的崩溃。在iOS4.3模拟器中一切正常 到

我有一个非常奇怪的问题,如果我点击一个UITextField,我的应用程序中的任何UITextField都会因以下错误而崩溃:

0\u CreateCachePathEmbedded(\uu CFString常量*,无符号字符)

0x0246ac4f mov(%esi),%esi

线程5 WebThread:程序接收到信号:“EXC\u坏访问”

我尝试在interface builder中添加一个未链接到任何内容的UITextField,但仍然遇到相同的崩溃。在iOS4.3模拟器中一切正常


到底发生了什么事?

仍然不确定问题出在哪里,但我能够通过将所有代码复制到一个新项目来解决问题。

在我的情况下,是目标设置中的产品名称导致了这个奇怪的错误。

这也发生在我身上,并且更改了产品名称。我有一个∂ 我的产品名称中的字符表示我的调试/开发版本的应用程序,该应用程序在iOS 4.3上运行正常,但在iOS 5上运行不正常。要找出点击随机UITextField(并非全部导致此情况,例如,如果我更改UITextField以确保其不崩溃)会导致崩溃是不可能的,因为产品名称包含非标准字符


我希望这能帮助其他人解决这个问题,因为我花了好几天的时间调试它。

对不起,我没意识到它会缩小这么多。。我不知道如何从xcode获取完整的崩溃转储,但它在左边写着:0_CreateCachePathEmbedded(uu CFString const*,unsigned char),在右边写着“Thread 5 WebThread:Program received signal:“EXC_BAD_ACCESS”,我在iOS 5中遇到了许多问题,但到目前为止,这些问题主要是由于一些原因造成的(未记录和未描述)布局工作方式的变化。基本UITextFields(尽管未大量使用)你可能想考虑一下,也许某种布局MESUP是问题的根源。BTW,引用汇编程序是非常无用的。任何可能在控制台中的错误消息都是最有用的。控制台不显示任何错误=(也可以是僵尸对象(对象发布得太频繁))。在代码中的另一个地方,我曾经遇到过这种类型的错误,在iOS 4.3上,僵尸对象将被静默地接受(稍后可能会创建崩溃),而在iOS 5.0上,遇到了立即崩溃(尽管在某些代码中没有直接关联)。请给带有僵尸工具的工具一次尝试,并尝试在那里重新创建崩溃。我认为您没有“修复”该问题。如果我是您,我会将NSZombieEnabled添加到您当前的运行方案(产品->编辑方案..选择运行方案)。在“环境变量”下添加值为“是”的NSZombieEnabled".老实说,我不认为这是我的代码中的内存问题。这一定是因为某些项目设置与iOS 5不兼容,因为对于新项目,我没有任何问题。我的意思是,除了在interface builder中添加的单个UITextField之外,一个完全空的视图控制器怎么会有内存问题。不过,我的建议是这是一个很好的技巧。它可以让你调试NSzombie(解除分配的对象)。