首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >访问错误- iPhone Xcode 4

我是Xcode和Objective-C的初学者,我想在没有nib文件的情况下用代码制作一个视图控制器,并按照我想要的方式来塑造它。目前,使用这个非常简单的代码,我甚至不能因为EXC_BAD_ACCESS而改变背景颜色。

我在网上读到它是关于内存管理的,但是我似乎找不到解决这个问题的方法。我的代码片段:

AppDelegate.h

代码语言:javascript
运行
AI代码解释
复制
#import <UIKit/UIKit.h>
#import "DefaultViewController.h"

@class DefaultViewController;

@interface AppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    UIViewController *rootViewController;
}

@property (nonatomic, retain) IBOutlet UIWindow *window;
@property (nonatomic, retain) IBOutlet UIViewController *rootViewController;

@end

AppDelegate.m

代码语言:javascript
运行
AI代码解释
复制
@synthesize window = _window;
@synthesize rootViewController = _rootViewController;

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    UIViewController *rvc = [[DefaultViewController alloc] init];
    self.rootViewController = rvc;
    [rvc release];

    [self.window addSubview:self.rootViewController.view];

    // Override point for customization after application launch.
    [self.window makeKeyAndVisible];
    return YES;
}

- (void)dealloc
{
    [_window release];
    [_rootViewController release];
    [super dealloc];
}

我制作的视图控制器,右击->新文件和没有xib的UIViewController子类!在loadView中,我只尝试这样做:

代码语言:javascript
运行
AI代码解释
复制
self.view.backgroundColor = [UIColor redColor];
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-09-03 02:32:33

问题可能是rootViewController没有初始化的视图。很难说,因为你没有显示DefaultViewController的代码。这也可能是DefaultViewController中的另一个错误。

FWIW,你有两个过时的ivar:

代码语言:javascript
运行
AI代码解释
复制
@interface AppDelegate : NSObject <UIApplicationDelegate> {
    UIWindow *window;
    UIViewController *rootViewController;
}

你可以删除它们,因为你合成了_window_rootViewController,从来没有使用过上面的代码。

票数 1
EN

Stack Overflow用户

发布于 2011-09-03 04:18:02

你的代码有一些问题。但首先,获取EXC_BAD_ACCESS的关键问题是因为您在loadView中调用self.view.backgroundColor。如果重写loadView,则必须在方法内部构造视图层次结构。通过不使用该方法创建视图层次结构,您将在一个不存在的视图上调用backgroundColor。相反,完全删除loadView方法或将其注释掉并将self.view.backgroundColor移到viewDidLoad方法中。(请记住,即使是一个空的loadView方法也会有问题,您需要将其移除或注释掉)

第二..。将代码更改为

代码语言:javascript
运行
AI代码解释
复制
self.rootViewController = rvc; to self.window.rootViewController = rvc;

顺便说一句,一旦你添加了一个视图控制器,你就不需要再次将rootViewController的视图作为子视图添加到窗口中。将视图控制器分配给rootViewController属性会将视图控制器的视图安装为窗口的内容视图。

第三。在初始化DefaultViewController时,您需要

代码语言:javascript
运行
AI代码解释
复制
UIViewController *rvc = [[DefaultViewController alloc] init];

不要那样做,要这样做

代码语言:javascript
运行
AI代码解释
复制
DefaultViewController *rvc = [[DefaultViewController alloc] init];
票数 1
EN

Stack Overflow用户

发布于 2011-09-03 02:33:53

更改代码,使其成为

代码语言:javascript
运行
AI代码解释
复制
self.window.rootViewController = rvc;
[self.window makeKeyAndVisible];
return YES;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7290754

复制
相关文章
VBA代码:将垂直单元格区域转换成水平单元格区域
有时候,我们想将垂直列表中的数据转换为水平列表,通常可以使用数据透视表来完成。假设数据是唯一ID,并且客户端可以附加到相同的唯一ID,如下图1所示。
fanjy
2022/11/16
3790
VBA代码:将垂直单元格区域转换成水平单元格区域
VBA代码:将水平单元格区域转换成垂直单元格区域
下图1所示是一个常见的需求,在多个列中放置着每个月份的数据,需要将月份移到单个列中,同时保留报表中的所有描述性信息。
fanjy
2022/11/16
1.4K0
VBA代码:将水平单元格区域转换成垂直单元格区域
POI判断某个单元格是否是合并单元格
注:比如我们的数据是上面N个单元组成,且每个单元所占行数可能不同。第一列占据一列,中间数据每个占用一个单元格,最后一列与第一列占用相同的行数,这时我们需要获取起始单元格占用几行(起始行--结束行),获取到这些数据后我们就能读取中间单元格数据(这些数据可以作为上面单元的一个属性),下面给出具体代码:
johnhuster的分享
2022/03/28
3.2K0
POI判断某个单元格是否是合并单元格
点击table的td单元格出现dialog弹窗,获取值后将值放回td单元格
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/106388.html原文链接:https://javaforall.cn
全栈程序员站长
2022/06/30
2.4K0
自适应单元格
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/51558231
用户1451823
2018/09/13
3520
Excel公式练习32: 将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格
本次的练习是:如下图1所示,单元格区域A1:D6中是一系列数据,其中包含空单元格,现在要将它们放置到一列中,并删除空单元格,如图中所示的单元格区域G1:G13,如何使用公式实现?
fanjy
2020/02/18
2.5K0
Excel公式技巧13: 从字符串中提取数字——将所有数字提取到单个单元格
前三篇文章分别讲解了提取位于字符串开头和末尾的数字的公式技术、提取字符串中所有的数字并放在不同的单元格中的公式技术,本文研究从字符串中提取所有数字并将这些数字作为单个数字放置在单个单元格中的技术。
fanjy
2020/03/16
2.7K0
将Power Pivot模型数据取值到单元格中
在Excel中,使用Power Pivot搭建的模型通常用透视表展现结果,如下图所示。
wujunmin
2021/09/07
1.5K0
将Power Pivot模型数据取值到单元格中
VBA: 禁止单元格移动,防止单元格公式引用失效
文章背景: 在工作生活中,存在文件共享的情况。在数据处理时,单元格公式中往往要引用原始数据源。多人操作时,每个人的操作习惯不同,如果数据源的单元格不小心被人为移动或删除,会导致单元格公式引用失效,产生#REF! 错误。如果进行的是跨表引用,这种错误往往还很难发现。
Exploring
2022/09/20
8080
POI合并单元格
核心代码: CellRangeAddress region = new CellRangeAddress(rowNum2-(chongfucishu-1), rowNum2, 0, 0); sheet2.addMergedRegion(region); //year1 年份重复的 for (String key : map_year1.keySet()) { String years = key;//重
手撕代码八百里
2020/07/28
1.4K0
关于单元格属性
在皕杰报表文本单元格属性中,有“数据值”,“显示值”和下“显示格式”三个属性,数据值是单元格的真实值,当单元格被引用时,引用的就是单元格的真实值;显示值是在报表展现时所显示的内容,仅仅用来显示;显示格式是当报表展现时的所展现的格式。通常我们在数据表里取出的某个字段的值是一个代号,但我们展现出来的报表,并不希望显示代号,希望显示的是每个代号代表的具体值,这时就要用到显示值的属性。
用户10133222
2022/11/21
4250
VBA专题13:引用单元格/单元格区域的方法
在VBA中,可以通过多种不同的方式来引用工作表中的单元格/单元格区域。下面是一些引用方法的汇总。
fanjy
2021/08/31
4K0
怎样将Excel包含某字符的单元格填充颜色
  在处理数据的时候,xmyanke想将Excel中包含某字符的单元格填充蓝色,比较容易看清,弄了好一阵子都没完成,最后试用条件格式处理了一下,终于实现了。   比如要将A1到A12区间包含数字1的单
ytkah
2018/03/05
3.1K0
怎样将Excel包含某字符的单元格填充颜色
Excel公式练习33: 将包含空单元格的多行多列单元格区域转换成单独的列并去掉空单元格(续)
本次的练习是:这个练习题与本系列上篇文章的练习题相同,如下图1所示,不同的是,上篇文章中将单元格区域A1:D6中的数据(其中包含空单元格)转换到单独的列(如图中所示的单元格区域G1:G13)中时,是以行的方式进行的,即先放置第1行中的数据、再放置第2行……依此类推。这里,需要以列的方式进行,即先放置第1列中的数据、再放置第2列中的数据……依此类推,最终结果如图中所示的单元格区域H1:H13,如何使用公式实现?
fanjy
2020/02/18
2.4K0
cssjshtml 单元格合并
function MergeCell(tableId, startRow, endRow, col) { var tb = document.getElementById(tableId); if (col >= tb.rows[0].cells.length) { return; } //当检查第0列时检查所有行 if (col == 0) { endRow = tb
葫芦
2019/04/17
1.4K0
单元格自动计算
在我们填报报表时,有的单元格的数据是需要通过自动计算直接获得,但是不是所有的函数都支持填报自动计算,这是为什么呢?
用户10133222
2022/12/15
3260
Excel技巧:使用上方单元格的值填充空单元格
有时候,工作表列中有许多空单元格,而不是在每行都重复相同的内容,这样可以使报表更容易阅读,然而也会导致一些问题,例如不方便排序或筛选数据。
fanjy
2022/04/13
3.5K0
Excel技巧:使用上方单元格的值填充空单元格
VBA: 禁止单元格移动,防止单元格公式引用失效(2)
文章背景: 在Excel中,公式引用无效单元格时将显示 #REF! 错误。当公式所引用的单元格被删除或被粘贴覆盖时最常发生这种情况。
Exploring
2022/09/20
1.3K0
VBA: 判断单元格区域内是否存在合并单元格
文章背景: 工作中,有时需要判断单元格区域内是否存在合并单元格,这时,可以用到Range.MergeCells属性。
Exploring
2023/10/22
2.4K0
VBA: 判断单元格区域内是否存在合并单元格
Excel公式技巧90:剔除单元格区域中的空单元格
有时候,在一列数据中有许多空单元格,导致数据不连续,我们需要剔除这些空单元格,让数据区域连起来。
fanjy
2021/07/12
4.7K0
Excel公式技巧90:剔除单元格区域中的空单元格

相似问题

在google电子表格中操作单个单元格

12

将单元格跨几行折叠为R数据帧中的单个列

310

Google电子表格:单个单元格的电子邮件通知

314

Google电子表格脚本-获取单个引用单元格的getColumn

23

Google电子表格单元格引用合并单元格

46
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档