console.trace()
在控制台上输出结果.
我想将结果作为字符串并将它们保存到文件中.
我没有为函数定义名称,我也无法得到它们的名字callee.caller.name
.
我想在应用程序变为活动状态或成为前台时在UIViewController中重新加载数据.
我知道在AppDelegate类中调用了applicationDidBecomeActive.
但我必须有一个UIViewController的全局变量来重新加载AppDelegate类中的数据,就像这段代码一样:
in AppDelegate.m
// global variable
UIViewController *viewController1;
UIViewController *viewController2;
-(void)applicationDidBecomeActive:(UIApplication *)application
{
[viewController1 reloadData];
[viewController2 reloadData];
}
Run Code Online (Sandbox Code Playgroud)
但是,当我有很多UIViewControllers时,它很不方便.
我可以在UIViewController而不是AppDelegate类中使用applicationDidBecomeActive吗?
或者有比UIViewController的全局变量更好的方法吗?
我还需要使用UIViewControllers中的以下方法:
-(void)applicationWillResignActive:(UIApplication *)application
-(void)applicationDidEnterBackground:(UIApplication *)application
-(void)applicationWillEnterForeground:(UIApplication *)application
Run Code Online (Sandbox Code Playgroud) 我希望能够使用jQuery拖动一组元素,就像我在Windows桌面上选择并拖动多个图标一样.
我找到了threedubmedia的jQuery.event.drag的演示:
http://threedubmedia.com/code/event/drag/demo/multi
http://threedubmedia.com/code/event/drag#demos
我认为这个插件很棒.这是一个很好的流行图书馆吗?您知道使用它的网站或应用程序吗?
是否还有其他库或插件来拖动多个对象?
可以jQuery UI的拖动多个对象?
例如,我进行了子类化UILabel
并添加了一个方法或属性,-verticalTextAlignment
用于垂直对齐文本.
并且在将来,如果下一版本的SDK或iOS添加了具有相同名称的方法或属性,则可能是我的应用程序崩溃或意外行为.
*即使您使用类别而不是子类化,也会出现此问题.
问题1
如何避免Objective-C中的这种意外覆盖?
我认为你可以通过为你的所有方法和属性添加前缀来避免这种情况-XXX_verticalTextAlignment
.但这不现实,不是吗?
问题2
我知道这种意外压倒一切的发生在编译时,或当你更新iOS SDK,OSX SDK或XCode中.
但是在更新iPhone的iOS版本时是否也可能发生?
例如,您的应用程序是否可能在iOS5上运行良好但由于iOS6中的意外覆盖而无法在iOS6上运行.(您可以将iOS5和iOS6替换为任何版本,例如iOS5.0和iOS5.1)
我想从其类别访问类的私有属性.
但是要获得私人财产,我必须重新申请同一个私人财产.
如果我不重新声明,我会收到编译错误Property '<property name>' not found on object of type '<class name> *'
.
这是从类别访问类的私有属性的正确方法吗?
还有更好的方法吗?
以下代码是私有财产在类别中重新声明的代码:
ClassA.h
@interface ClassA : NSObject
-(void)method1;
@end
Run Code Online (Sandbox Code Playgroud)
ClassA.m
#import "ClassA.h"
// private property
@interface ClassA()
@property (nonatomic) NSString *s;
@end
@implementation ClassA
@synthesize s;
-(void)method1
{
self.s = @"a";
NSLog(@"%@", [NSString stringWithFormat:@"%@ - method1", self.s]);
}
@end
Run Code Online (Sandbox Code Playgroud)
ClassA的+ Category.h
#import "ClassA.h"
@interface ClassA(Category)
-(void)method2;
@end
Run Code Online (Sandbox Code Playgroud)
ClassA的+ Category.m
#import "ClassA+Category.h"
// redeclare private property
@interface ClassA()
@property(nonatomic) NSString *s;
@end
@implementation ClassA(Category) …
Run Code Online (Sandbox Code Playgroud) 我是Objective-C/iOS编程的初学者.
我想制作一个头文件,其中包含我在项目中使用的所有类头.
并在每个类头文件中导入标头.
喜欢这个问题:
在同一个头文件中包含多个类
但这种方法是否会增加编译时间?
还是有其他缺点吗?
请告诉我导入标题的好方法.
我想比较objective-c中的2个BOOL值.
我发现以下代码的(3) - (6)有效.
(1) - (2)不起作用,因为BOOL是公正的signed char
.
(3)工作并且非常易读,但我认为bool
不是客观的.
使用bool
在Objective-C的代码是好的?
哪个是比较objective-c中的2个BOOL值的安全且好的方法?
还有其他更好的比较方法吗?
BOOL b = YES;
BOOL c = 2;
NSLog(@"(1) %d", b == c); // not work
NSLog(@"(2) %d", (BOOL)b == (BOOL)c); // not work
NSLog(@"(3) %d", (bool)b == (bool)c);
NSLog(@"(4) %d", !b == !c);
NSLog(@"(5) %d", !!b == !!c);
NSLog(@"(6) %d", (b != 0) == (c != 0));
Run Code Online (Sandbox Code Playgroud)
结果:
(1) 0
(2) 0
(3) 1
(4) 1
(5) 1
(6) 1
Run Code Online (Sandbox Code Playgroud) 我想用+[NSException exceptionWithName:reason:userInfo:]
.
但是我应该用什么字符串作为参数Name:
?
异常名称在项目中是否应该是唯一的?
或者我可以使用@"MyException"来解决所有异常问题?
我不知道用于什么异常名称.
使用的例外名称在哪里?
我正在使用UIView
而UIButtons
不是使用而不是制作自定义导航栏UINavigationBar
.
但我UIButtons
在导航栏上的反应并不敏感.
我必须点击几乎中心UIButton
点击.
如果我点击边缘,它就没有响应UIButton
.
但是UINavigationBar
可以通过点击按钮的边缘来点击法线上的按钮.
即使通过点击按钮外部,也可以轻敲按钮.
也可以通过点击按钮边缘或外部来轻触相机应用程序上的快门按钮或选项按钮.
如何将这些易于点击的按钮实现到我的应用程序?
我想记录用户的IP地址,引用和用户代理.
在PHP中,我可以从以下变量中获取它们:
$_SERVER['REMOTE_ADDR']
$_SERVER['HTTP_REFERER']
$_SERVER['HTTP_USER_AGENT']
Run Code Online (Sandbox Code Playgroud)
如何让他们在红宝石?
iphone ×7
objective-c ×6
ios ×5
javascript ×2
boolean ×1
compare ×1
console ×1
firefox ×1
header ×1
ip-address ×1
jquery ×1
jquery-ui ×1
referrer ×1
ruby ×1
stack-trace ×1
uibutton ×1
uikit ×1
user-agent ×1