我正在使用Realm进行一个简单的小项目.我正在使用最新版本的框架(昨天从Github编译)和当前AppStore版本的Xcode和Swift 2.1.
我正在通过segue将Realm数据库对象从一个视图控制器移交给另一个视图控制器prepareForSegue(),以便对其进行编辑(并填写当前值).
不知何故,目标视图控制器中的对象似乎存在问题.当我只是print()目标视图控制器中的对象(在viewDidLoad()我计划使用它的任何方法中)时,对象在控制台中正确显示,如下所示:
Object {
name = asdf
value = 8
}
Run Code Online (Sandbox Code Playgroud)
等等.
如果我尝试访问这些值(即使在上一行或下一行中)并将它们分配给另一个变量,就像myValue = objectToEdit.value我得到0一样.
通过使用断点调试代码来显示调试器中的对象,其中所有值为空("")或0,具体取决于类型.不过,不管怎么说,Strings因为某些原因被抓出来了,我可以访问并打印它们myString = objectToEdit.name,而调试器显示name = (String) "",声称它是空的.
当我在第一个视图中从数据库中获取数据库对象时,已经发生了相同的行为.直接的想法是,值确实为0并且只保存了字符串,但print()方法另有说法.
任何人都可以解释这种奇怪的行为,也许可以告诉我哪些地方忽略了什么?我现在怀疑这是框架的一些内部问题,但我不确定.如果需要,我当然会更新代码或回答问题.
我在Windows 7机器上运行Eclipse.自上次将Android相关文件(Android SDK和AVD)更新到4.1版以来,我的键盘看起来很怪异:

(这是Android开发者网站上教程的第一部分......)
我之前有一个真正的qwerty键盘,但现在不仅(部分)日语,但我似乎无法找到如何将其改为qwerty键盘.
我已经尝试检查更新,重新启动程序和整个PC,更改AVD键盘设置和不同的Android版本的不同虚拟设备(图片显示2.3.3).
非常感谢你的帮助!