我正在使用Xcode 6.2进行iOS项目.在旧版本的Xcode中,当为IBOutlet创建连接时,它始终是弱存储.现在,当我创建连接时,它们默认为强大.我这样离开,并没有注意到任何差异.
哪个版本的Xcode默认更改为强,为什么?
我正在通过Xcode使用Leaks Instruments功能来(尝试和)查找内存泄漏.我还没弄明白如何使用这个程序.我在程序中单击Leaks并看到内存增加,因为我在模拟器中做了各种各样的事情.我显示了扩展详细信息窗格."扩展详细信息"窗格中引用我的应用程序的唯一内容是main.与Xcode生成的主要方法一样.其他一切都是UIKit,Foundations和其他我没写过的SDK类.我的错误是我的应用程序没有显示任何内容?
在我达到3分钟之前,有超过100个泄漏总计2.5k.这是常见的吗?
我在VS Code中启用了默认的"log"代码段.我还添加了另一个片段.我输入前缀时都不显示.我已经设定editor.tabCompletion为真.
知道为什么这些不起作用?
我试过这个
NSCharacterSet *myCharSet = [NSCharacterSet characterSetWithCharactersInString: myString];
[myCharSet count];
Run Code Online (Sandbox Code Playgroud)
但是要警告NSCharacterSet可能无法响应计数.这适用于桌面应用而不是iPhone,我认为上面的代码可以使用.
我有一个断点操作,并使用下拉列表中的日志选项.我想打印出字符串(摘要)值.我这样做:
the person name is: @p.name@
Run Code Online (Sandbox Code Playgroud)
但是会打印内存地址.我可以切换到Debugger Command选项并执行
po f.name
Run Code Online (Sandbox Code Playgroud)
但后来我丢失了我的描述,如第一个选项中所使用的那样.使用Log选项,有没有办法打印字符串值而不是内存地址?
我目前正在执行以下操作以清除NSMutableDictionary
[myDictionary release];
myDictionary = [[NSMutableDictionary alloc] init];
Run Code Online (Sandbox Code Playgroud)
释放行实际上不会释放字典中的任何对象.我仍然可以在下一行看到所有这些.直到执行alloc行,字典才被清零.有没有更好的方法呢?
我想显示只有一个小数位.我尝试过以下方法:
string thevalue = "6.33";
thevalue = string.Format("{0:0.#}", thevalue);
Run Code Online (Sandbox Code Playgroud)
结果:6.33.但应该是6.3?即使0.0也不起作用.我究竟做错了什么?
我想在下面的字符串中出现双引号,所以它看起来像:
"hi there == "
Run Code Online (Sandbox Code Playgroud)
这是我正在使用的代码:
NSMutableString *s = [[NSMutableString alloc] init];
[s appendString:@""""];
[s appendString:@"hi there == ""\n\r"];
Run Code Online (Sandbox Code Playgroud)
相反,我只得到:
hi there ==
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我正在从一个看起来像这样的对象中检索一个键:
po obj
{
TypeID = 3;
TypeName = Asset;
}
Run Code Online (Sandbox Code Playgroud)
正在检索键值,如下所示:
NSString *typeId = (NSString*)[obj objectForKey:@"TypeID"];
Run Code Online (Sandbox Code Playgroud)
它不是typeId是NSString,而是NSDecimalNumber.这是为什么?
如何将其转换为NSString?
以下是否删除了所有NSNotificationCenter.defaultCenter,其中添加了名称视图?
NSNotificationCenter.defaultCenter().removeObserver(self)
Run Code Online (Sandbox Code Playgroud)
如果我在viewDidLoad()的相同视图中有以下内容,是否将使用上面的单行删除它们?
NSNotificationCenter.defaultCenter().addObserver(self, selector: "method1", name: UITextFieldTextDidChangeNotification, object: nil)
NSNotificationCenter.defaultCenter().addObserver(self, selector: "method2", name: UITextViewTextDidChangeNotification, object: nil)
Run Code Online (Sandbox Code Playgroud)