小编ach*_*ral的帖子

Objective-C:一组UIButtons

如果我在Interface Builder中设置了大量按钮,我如何通过代码将它们放入数组中?

例如,如果我有三个按钮,并在接口文件中定义它们:

@property (nonatomic, retain) IBOutlet UIButton *button1;
@property (nonatomic, retain) IBOutlet UIButton *button2;
@property (nonatomic, retain) IBOutlet UIButton *button3;
Run Code Online (Sandbox Code Playgroud)

如果我想将每个按钮重命名为"Hello",我希望能够将它们组合成一个数组,然后使用如下函数:

for (int i = 0; i < someArray.count; i++)
{
    someArray[i].text = @"Hello";
}
Run Code Online (Sandbox Code Playgroud)

有人可以提供有关如何实现这一目标的信息(如果可能的话)?

谢谢

arrays objective-c uibutton

7
推荐指数
3
解决办法
1万
查看次数

XCode - 了解分配工具

在分析应用程序时,我注意到每次执行某些操作(涉及UIViews)时,实时字节增加大约250 KB.

查看对象列表,主要(不断增长的)罪魁祸首只是读作"malloc 144字节".

偶尔我使用Allocations工具来发现我所持有的对象比我想要的更长,但我不确定如何解释"malloc"对象.

任何指导将不胜感激.

xcode allocation ios

5
推荐指数
1
解决办法
2856
查看次数

Objective C - 使用NSURLConnection发布POST数据

我正在慢慢地学习用于iOS开发的URL加载系统,我希望有人可以简要解释下面这段代码:

NSString *myParameters = [[NSString alloc] initWithFormat:@"one=two&three=four"];
[myRequest setHTTPMethod:@"POST"];
[myRequest setHTTPBody:[myParameters dataUsingEncoding:NSUTF8StringEncoding]];
Run Code Online (Sandbox Code Playgroud)

最终我希望能够创建一个登录我的ISP网站的应用程序,并检索我剩下的月份剩余的数据,我觉得我应该首先了解setHTTPMethod/setHTTPBody.

亲切的问候

iphone url post objective-c

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

面向对象的编程 - 何时添加新类?

我仍然在学习Objective-C的基础知识,但我仍然试图掌握对象和类.

我理解通常的类比:"汽车"是类,"福特"是该类的对象,具有某些属性,如"颜色"和"年制造".我不明白的是如何在实际使用中使用它.

假设我正在创建一个包含所有常用功能的基本Web浏览器(加载页面,显示页面,将页面添加为书签,打印页面).在简单的变量和方法之外,我似乎无法想到这样的应用程序.你知道,你单击一个按钮它会调用一个方法来操作一些变量.我也不能不认为这将是一个非常长的代码页,所以我理解它将有助于分解它.

我很抱歉,如果这一切都非常含糊,我只是觉得很难理解何时我应该创建新的类,什么时候可以添加另一个方法给我已经在工作的类.

亲切的问候.

oop class object

4
推荐指数
1
解决办法
208
查看次数

Objective-C:关于头文件声明的简单问题

这是一个初学者,为iPhone开发,有一个非常简单的问题:在头文件中声明一个方法,然后在实现文件中填写它的原因是什么?这总是必须要做吗?

另外,我知道在头文件的@interface中声明变量,但为什么它们有时只用@property标签重复?这是否适用于其他类可能希望读取或写入的变量(因此它们会自动创建getter和setter方法)?

亲切的问候.

iphone header objective-c

3
推荐指数
1
解决办法
5766
查看次数

iOS - iPhone 4S上的慢动画(但在模拟器上很好)

我已经使用以下代码对UILabel进行了子类化,这可以正常工作 - 但是涉及子类的任何动画都比普通的UILabels慢很多.我认为Quartz是罪魁祸首,但是我能做些什么来加快速度?

- (void)drawTextInRect:(CGRect)rect
{
    CGSize shadowOffset = self.shadowOffset;
    UIColor *textColor = self.textColor;

    // Establish the Quartz 2D drawing destination:
    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetLineWidth(context, 1);
    CGContextSetLineJoin(context, kCGLineJoinRound);

    // Draw the label’s outline:
    CGContextSetTextDrawingMode(context, kCGTextStroke);
    self.textColor = [UIColor whiteColor];
    [super drawTextInRect:rect];

    // Draw the label:
    CGContextSetTextDrawingMode(context, kCGTextFill);
    self.textColor = [UIColor textColor];
    self.shadowOffset = CGSizeMake(0, 0);
    [super drawTextInRect:rect];

    self.shadowOffset = shadowOffset;
}
Run Code Online (Sandbox Code Playgroud)

outline uilabel ios

3
推荐指数
1
解决办法
1572
查看次数

iOS - 这是枚举的任务吗?

如果我想实现以下代码,枚举是否合适?我在枚举上查了几个问题,但我还是有点不确定.

if (dayOfWeek == Monday)
{
    // Do something
}
else if (dayOfWeek == Tuesday || dayOfWeek == Wednesday)
{
    // Do something else
}
Run Code Online (Sandbox Code Playgroud)

如果这看似正确,我将如何初始化枚举?它会进入标题或实现文件吗?

enums initialization ios

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

Objective-C - 理解视图控制器

我知道视图控制器可以帮助控制应用程序中的多个视图,但我无法理解何时使用它们.

如果我有一个带有主页面的应用程序,几个具有"层次结构"结构的视图,以及一个未与层次结构连接的页面,我的应用程序应该有哪些文件?appdelegate,导航控制器和视图控制器?多个视图控制器?只是一个导航控制器?

此外,它们是否应包含在一个.xib文件或多个.xib文件中?

任何帮助将不胜感激.

谢谢.

objective-c uiviewcontroller uiview ios

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

Objective-C:类只是一个.m和.h文件吗?

我仍然在使用Objective-C中的类和对象.

一个类只是一个接口和实现文件的组合?或者,换句话说,你什么时候对自己说"我需要一个新的.m文件".目前,当我想将某些方法和变量放在一个单独的位置时,我创建了一个新的实现文件,这样我的主代码就不会变得庞大.

任何帮助将不胜感激.

iphone class objective-c

0
推荐指数
1
解决办法
798
查看次数

Objective-C:NSTimer选择器

是否可以启动计时器并使用多个参数传递选择器方法?

下面是一个工作计时器的简单示例:

gameTimer = [NSTimer scheduledTimerWithTimeInterval:0.5
                                             target:self
                                           selector:@selector(gameLoop:)
                                           userInfo:nil
                                            repeats:YES];
Run Code Online (Sandbox Code Playgroud)

选择器方法将被命名 - (void)gameLoop:(NSTimer *)theTimer;

是否可以使用多个参数传递此选择器方法?那么该gameLoop方法还可以处理一个int值和一个bool值?

以下显然不起作用,但可能会突出我所追求的内容:

gameTimer = [NSTimer scheduledTimerWithTimeInterval:0.5
                                             target:self
                                           selector:@selector(gameLoop:NO:75)
                                           userInfo:nil
                                            repeats:YES];

- (void)gameLoop:(NSTimer *)theTimer isRunning:(bool)running numberOfSteps:(int)steps;
Run Code Online (Sandbox Code Playgroud)

iphone timer objective-c

0
推荐指数
1
解决办法
2915
查看次数