我似乎无法弄清楚如何让Objective-c自动封装我的原语.
我以为我能够做到以下几点
float foo = 12.5f;
NSNumber* bar;
bar = foo;
Run Code Online (Sandbox Code Playgroud)
但是我发现我习惯了更冗长的方法
float foo = 12.5f;
NSNumber* bar;
bar = [NSNumber numberWithFloat:foo];
Run Code Online (Sandbox Code Playgroud)
我做错了还是这样做得好?
问题 我正试图在一个圆周方向上创建一个视觉半径圆,它实际上保持固定的大小.例如.因此,如果我将半径设置为100米,当您缩小地图视图时,半径圆会逐渐变小.
我已经能够实现缩放,但是当用户操纵视图时,半径rect/circle似乎远离Pin Placemark"抖动".
我相信这在即将推出的iPhone OS 4上更容易实现,但我的应用程序需要支持3.0.
表现形式 这是一个行为的视频.
实现 注释以通常的方式添加到Mapview中,并且我在我的UIViewController子类(MapViewController)上使用了委托方法来查看区域何时更改.
-(void)mapView:(MKMapView *)pMapView regionDidChangeAnimated:(BOOL)animated{
//Get the map view
MKCoordinateRegion region;
CGRect rect;
//Scale the annotations
for( id<MKAnnotation> annotation in [[self mapView] annotations] ){
if( [annotation isKindOfClass: [Location class]] && [annotation conformsToProtocol:@protocol(MKAnnotation)] ){
//Approximately 200 m radius
region.span.latitudeDelta = 0.002f;
region.span.longitudeDelta = 0.002f;
region.center = [annotation coordinate];
rect = [[self mapView] convertRegion:region toRectToView: self.mapView];
if( [[[self mapView] viewForAnnotation: annotation] respondsToSelector:@selector(setRadiusFrame:)] ){
[[[self mapView] viewForAnnotation: annotation] setRadiusFrame:rect];
} …Run Code Online (Sandbox Code Playgroud) 我有一系列我想要与正则表达式匹配的字符,并根据它们的含义将它们替换为特定的字符串.
例:
In =>"这是我要替换1 2&3的输入字符串"
Out =>"这是我要替换ONE TWO&THREE的输入字符串"
我目前通过使用空格作为分隔符拆分字符串,并分别解析每个字符串,逐步重建字符串来完成此操作.我觉得这很难看,缺乏想象力,而且有点慢.
根据Apple文档,我应该可以使用该replacementStringForResult:inString:offset:template:方法执行此操作.但是我似乎无法理解如何正确使用它.
我想创建两个串行队列A和B.其中队列B是队列A的目标.我想在B上排队一些块,并暂停它直到我准备执行它们,但是我想继续执行块在队列A.
如果我暂停B,它还会暂停它的目标队列(队列A)吗?
我的想法是,我想安排这些特定的块(在队列B上)在稍后(未指定的)日期执行但是我不希望它们同时运行(这涉及核心数据^ _ ^)而我不这样做想要处理信号量.但是我希望队列A继续处理它的块,而B则被暂停
如果不清楚这里是一些示例代码
dispatch_queue_t queueA = dispatch_queue_create("app.queue.A");
dispatch_queue_t queueB = dispatch_queue_create("app.queue.B");
dispatch_set_target_queue( queueB, queueA );
dispatch_suspend( queueB );
/*
* Add a bunch of blocks to queue B or A
* Where the ones added to A should execute immediately
*/
//Wait till blocks on queue A have finished and start up B
dispatch_resume( queueB );
dispatch_release(queueA);
dispatch_release(queueB);
Run Code Online (Sandbox Code Playgroud) 我正在构建需要iPhone的Call日志中的一些数据的应用程序(只读).呼叫日志是位于" /User/Library/CallHistory/call_history.db " 的sqlite数据库.我使用越狱设备来提取日志.但是,尝试使用sqlite_open3()命令打开此位置时出现SQLITE_ERROR错误,根据库文档意味着"SQL错误或缺少数据库".在尝试调试错误时,我使用NSFileManager枚举文件夹('/ User/Library /').看起来好像它正在返回一组"已过滤"的结果,它会将"CallHistory"文件夹与其他几个文件夹一起排除.
File系统使用一系列别名来给出传统OS X文件结构的错觉,我不知道这些是否对我的结果有影响.
通话记录仅出现在设备上,而不是模拟器上.我一直无法让它在运行fireware 2.1的第一代iPhone上工作.
这是我用来测试输出的一些代码
NSDirectoryEnumerator *dirnum = [[NSFileManager defaultManager] enumeratorAtPath: @"/private/var/mobile/Library/"];
while( bar = [dirnum nextObject])
{
//Uncomment if you don't want to log sub folders
//[dirnum skipDescendents];
NSLog(bar);
}
Run Code Online (Sandbox Code Playgroud)
我怀疑Apple阻止访问该目录作为其沙盒策略的一部分,但我现阶段没有证据.但是,我可以毫无问题地访问地址簿,所以我有点困惑.
谢谢
基本上我想在UINavigationController下面显示一个通知,覆盖最顶层的UIViewController视图占用的区域.但是我希望背景图像向上延伸并部分覆盖UINavigationBar
成品应该如下所示

诀窍在于我只希望将其应用于具有视图层次结构的某些视图,因此通过使用来解决问题[UIApplication keyWindow]可能不是最好的主意.另外我假设通过使用私有以外的视图UINavigationTransitionView将不会成为视图过渡动画的一部分,当我弹出这个视图时,将我的视图保留在控制器的顶部.
最顶层视图控制器的视图也没有帮助,因为它的帧终止于底部UINavigationBar,意味着箭头不会重叠UINavigationBar
建议?
谢谢
iphone uinavigationbar uiviewcontroller uinavigationcontroller
我想动画iPhone上CATextLayer的文本颜色(foregroundColor)的变化.根据文档,该属性的隐式动画在OSX 10.6上不可用,但没有提到iOS.因此,我只是假设动画必须是明确的,才能在iOS上运行.
我已经使用了更改了支持层类+(class)layerClass,并在UIView init方法中为属性设置了初始值.文本显示正常,以及我应用的所有属性(阴影,字体等),但动画没有任何影响.
下面是我的动画方法,我从KVO观察方法调用,以便视图在观察到的属性发生变化时提醒用户.
-(void) animateTextChange{
animation = [CABasicAnimation animationWithKeyPath:@"foregroundColor"];
[animation setFromValue:[[UIColor blackColor] CGColor]];
[animation setToValue:[[UIColor whiteColor] CGColor]];
[animation setDuration:2.0f];
[[self layer] addAnimation:animation
forKey:@"foregroundColor"
];
}
Run Code Online (Sandbox Code Playgroud)
一如既往地谢谢.
我刚刚创建了一个FirePHP服务器端库的经典ASP版本,它可以与常规的旧FirePHP控制台一起使用.
看看Github项目
但是在我的实现中,我必须创建一个全局来存储类实例.
如果甚至可以创建静态方法,我不知道如何使用这种语言中的单例模式.
cocoa-touch ×3
ios ×2
iphone ×2
objective-c ×2
asp-classic ×1
calayer ×1
mkmapview ×1
oop ×1
regex ×1
singleton ×1
uiview ×1
vbscript ×1