小编Chr*_*son的帖子

Cocoa中的抽象类内存管理

在编写抽象类或者没有直接实例化的类时...你是否倾向于在抽象类中编写dealloc方法并在适当的时候释放,然后允许孩子调用[super dealloc]然后担心他们只添加了不属于超类的实例变量?

你们如何用抽象类来管理内存?

我正在考虑以下几点:

@interface ClassA : NSObject {
    NSArray *foo;
}
@end

@implementation ClassA
- (void) dealloc {
    [foo release];
    [super dealloc];
}
@end

@interface ClassB : ClassA {
    NSArray *bar;
}
@end

@implementation ClassB
- (void) dealloc {
    [bar release];
    [super dealloc];
}
@end
Run Code Online (Sandbox Code Playgroud)

请原谅任何语法错误,我只是在飞行中写下来.以上是否有意义或内存管理方式有何不同?GC不是一个选项,因为我在iPhone上这样做.

cocoa memory-management objective-c

2
推荐指数
1
解决办法
871
查看次数

如何使用Cocoa Touch解析带浮点数(生成Java)的二进制文件?

给出以下用于生成二进制文件的Java代码:

DataOutputStream out = new DataOutputStream(new FileOutputStream("foo.dat"));
out.writeInt(1234);
out.writeShort(30000);
out.writeFloat(256.384f);
Run Code Online (Sandbox Code Playgroud)

我正在使用以下Objective-C代码并设法解析int和short值:

NSString *path = [[NSBundle mainBundle] pathForResource:@"foo" ofType:@"dat"];
NSFileHandle *file = [NSFileHandle fileHandleForReadingAtPath:path];

unsigned long intValue;
memcpy(&intValue, [[file readDataOfLength:4] bytes], 4);
intValue = NSSwapBigLongToHost(intValue);

unsigned short shortValue;
memcpy(&shortValue, [[file readDataOfLength:2] bytes], 2);
shortValue = NSSwapBigShortToHost(shortValue);
Run Code Online (Sandbox Code Playgroud)

我现在的问题是浮点值:关于如何解析它的任何线索?

java parsing cocoa-touch

2
推荐指数
1
解决办法
2224
查看次数

NSURLConnection在3G上下载质量差的JPEG

我正在从服务器下载JPEG图像,并使用NSURLConnection将其分配到我的iPhone应用程序中的图像对象.

当我使用Wifi连接时,一切正常,但一旦切换到3G,下载的JPEG质量就会大大降低.

还有其他人经历过这个吗?

有谁知道强迫iPhone下载全品质JPEG的方法?

提前致谢!缺口.

cocoa-touch

2
推荐指数
1
解决办法
757
查看次数

用于舍入浮点值的NSNumberFormatter

我有一个CGFloat值,我希望在小数点后舍入到3位数.我该怎么做?

谢谢.

cocoa-touch

2
推荐指数
1
解决办法
8803
查看次数

限制UIWebView中的用户交互

我想限制用户使用UIWebView中的链接.因此,仅显示单个没有导航的HTML页面.

我知道我可以使用UIWebView的"用户交互"选项来做到这一点,但我不能使用它,因为它也禁用了滚动,并且用户无法查看整个页面.

有任何想法吗?

cocoa-touch

2
推荐指数
1
解决办法
2492
查看次数

将变量传递给不同的视图控制器

我搜索和搜索但没有任何真正有效.

我正在尝试将文本值从文本框设置为字符串或其他任何内容,以便稍后我可以在不同的视图控制器中调用它.我似乎无法让它工作!

我也希望将数字转移,比如货币.

关于他们的任何想法?

干杯.

cocoa-touch

2
推荐指数
1
解决办法
5133
查看次数

如何将NSMutableArray用作队列?

我有NSMutableArray并使用它像队列等待操作.

数组中的示例:

0:"做点什么"
1:"做别的事"
2:"做点什么2"

当我使用[myarray removeObjectAtIndex:0]数组时没有重新排序,下次当我使用[myarray objectAtIndex:o]结果时nil.

当我删除"做某事"时,如何在第一个索引中添加"Do something else"和在第二个索引中添加"do something 2"?

cocoa

2
推荐指数
2
解决办法
8827
查看次数

NSImage - 裁剪后PDF模糊

我正在尝试裁剪包含PDF的NSImage.在打印时我正在使用NSImage的drawInRect来让它只绘制我需要的东西 - 而且效果很好.

但是,现在我正试图创建一个仅裁剪区域的新NSImage.我玩了一段时间,然后在CocoaBuilder上找到了这个代码:

- (NSImage *) imageFromRect: (NSRect) rect
{
  NSAffineTransform * xform = [NSAffineTransform transform];

  // translate reference frame to map rectangle 'rect' into first quadrant
  [xform translateXBy: -rect.origin.x
                  yBy: -rect.origin.y];

  NSSize canvas_size = [xform transformSize: rect.size];

  NSImage * canvas = [[NSImage alloc] initWithSize: canvas_size];
  [canvas lockFocus];

  [xform concat];

  // Get NSImageRep of image
  NSImageRep * rep = [self bestRepresentationForDevice: nil];

  [rep drawAtPoint: NSZeroPoint];

  [canvas unlockFocus];
  return [canvas autorelease];
}
Run Code Online (Sandbox Code Playgroud)

这样可行,但返回的NSImage模糊,不再适合打印.有任何想法吗?

cocoa pdfkit

2
推荐指数
1
解决办法
1283
查看次数

如何从基于导航的iPhone应用程序中删除导航栏?

我是新手iPhone开发者.我正在为iPhone开发基于导航的应用程序.我不在我的应用程序中使用Interface Builder.我想从应用程序中删除导航栏.我怎样才能做到这一点?

cocoa-touch

2
推荐指数
1
解决办法
1574
查看次数

xcode全局变量

如何从一个视图控制器获取xcode变量到另一个视图控制器,

实际上在一个视图控制器中我调用Web服务来获取声明为NSString的userID,而在另一个视图控制器中我想显示从前一个视图控制器检索的userID,那么如何做到这一点

谢谢

cocoa global-variables objective-c

2
推荐指数
1
解决办法
4906
查看次数