小编che*_*ead的帖子

在我的场景大纲或故事板中看不到导航栏的导航项?

我在两个视图控制器及其视图的场景轮廓中看不到任何导航项.视图控制器和场景应该连接到我的导航控制器和一个表视图控制器(嵌入在导航控制器中),我希望我会在这些视图下看到一个导航项来表示导航栏.也许我错了,期待那个?

我将表视图控制器嵌入到导航控制器中.此表视图控制器连接到另一个带有show segue的名为"login"的视图控制器/场景,并且此"登录"场景具有到"注册"场景的segue.

注意:在为两个视图创建视图控制器类之前,我添加了这些segue,所以也许这就是为什么会发生这种情况?(不确定只是想包含这些信息以防万一它有助于解决这个问题)

这是我的故事板上的内容截图:

Storyboard截图

您可以看到我的导航连接到表视图场景,然后该表视图控制器连接到另外两个视图控制器,如上所述.

这是场景轮廓:

场景轮廓

我想我只是想知道为什么导航栏的登录和注册场景中没有项目?

xcode uinavigationcontroller ios

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

viewDidLoad vs调用超级viewDidLoad

我正在研究Objective-c教程,并注意到viewDidLoad中的代码放在super viewDidLoad下,而不是第一次调用viewDidLoad.

在viewDidLoad和super viewDidLoad下放置代码有什么区别.

我理解对super的调用是对超类的调用,但不确定在这种情况下是什么.

感谢任何帮助.

objective-c ios

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

"方法的论证永远不是可选的"?

我开始参加斯坦福大学关于itunes的iOS编程课程的第二讲,并对上述陈述的确切含义感到困惑.幻灯片和演讲本身就是:'方法的参数(比如atTop:参数)绝不是可选的'.

以下是讲师提到的示例方法,他说论证永远不是"可选的":

- (void)addCard:(Card *)card atTop:(BOOL)atTop;
Run Code Online (Sandbox Code Playgroud)

他继续说,如果你想要一个没有addTop的addCard:方法:我们可以单独定义它:

如,

- (void)addCard:(Card *)card;
Run Code Online (Sandbox Code Playgroud)

我只是对他的意思感到困惑.我一直认为方法论证总是可选的,但我想我错过了一些明显的东西.他是否只是意味着在这种情况下你不能离开atTop:只是挂在那里因为它与第一种方法相关联?

有人可以帮忙吗?谢谢.

objective-c ios

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

助理编辑不显示正确的视图控制器?

只是一个微不足道的问题.我有一个小项目打开,有两个场景和两个相应的视图控制器.它们匹配正确,每个场景都有自己的视图控制器,我在身份检查器下的"自定义类"中设置.

当我选择了第二个场景,然后单击助理编辑器时,助理编辑器会调出另一个场景的视图控制器.这是Xcode中的正常滴答吗?我可以修理吗?

谢谢.

xcode

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

何时在objective-c中使用id?

我一直在阅读和学习instancetype,在大多数情况下应该如何使用它而不是id现代的目标c.我可以问一下,什么时候才真正使用id而不是instancetype?谢谢.

objective-c

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

从printf调用另一个函数?

我正在从一本关于C/Objective-C的书中做一个简单的挑战,我必须编写一个程序来计算和显示整数的平方,同时还将数字放在引号中.

我制作了一个成功运作的程序,但我有两个问题.首先考虑到减少代码量的想法,在我的代码中练习高效和简洁,我squareOfInteger从我的printf声明中调用了我的函数.这是否可取?它有用,但我担心这可能是不好的做法?

另一件事是int我在我的变量之前是否需要重复类型作为函数参数的内部number,或者是否足以将结果声明为类型int,并在参数中省略类型我在下面做过.

这是我的代码:

#include <stdio.h>

int squareOfInteger(number)
{
    int square = number * number;
    return square;



}

int main(int argc, const char * argv[]) {
    int myNumber = 5;
    printf("\"%d\" squared is \"%d\".\n", myNumber, squareOfInteger(myNumber));
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

非常感谢你的帮助.

c

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

编写工厂方法时使用[[self alloc] init]

我在理解[[self alloc] init] 编写工厂方法的过程中遇到了麻烦.据我所知,工厂方法方便的方法来创建一个类的实例,而且他们做的alloc,initautorelease你.我可以看到它是如何形成的,例如在NSArray使用工厂方法声明属性时arrayWithArray:,或者array等等要求它进行设置.我可以清楚地看到这与对allocand 的彻底(显式)调用有何不同init.

我的问题是我不了解更深层次的工厂方法.我在网上遇到一个解释说,不是调用allocinit显式,而是可以使用类工厂方法基本上封装这样的东西:

+(instancetype)createWithString:(NSString *)string
{
    return [[self alloc] initWithString:string];
}
Run Code Online (Sandbox Code Playgroud)

但是,如何instancetype[self alloc]有效地让子类要利用类工厂方法?

inheritance class objective-c factory-method

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