我试图使用addObject:上NSMutableArray与我创建了一个类,叫做Position.根据日志,Position我添加到数组的实例不是nil- 我可以将其属性输出到日志.然而,阵列似乎从来没有真正采取过Position.
@implementation Position
@synthesize tradeDirection, instrument, quantity, fill, profit, positive, index;
-(id)initWithArray:(NSArray*)data
{
self = [super init];
if (self)
{
self.tradeDirection = [data objectAtIndex:0];
self.instrument = [data objectAtIndex:1];
self.quantity = [data objectAtIndex:2];
self.fill = (NSNumber*)[data objectAtIndex:3];
self.profit = [data objectAtIndex:4];
self.positive = [@"True" isEqualToString:[data objectAtIndex:5]];
self.index = (NSNumber*)[data objectAtIndex:6];
}
return self;
}
+(Position*)createPositionWithString:(NSString*)data
{
return [[[self alloc] initWithArray:[data componentsSeparatedByString:@"#"]] autorelease];
}
@end
Run Code Online (Sandbox Code Playgroud)
-(void)loadPositions:(NSString*)data
{
TT_RELEASE_SAFELY(_positions); …Run Code Online (Sandbox Code Playgroud) 我正在开发一款iPhone应用程序.
我有以下INIT代码:
shapes = [NSMutableArray arrayWithCapacity:numShapes];
Run Code Online (Sandbox Code Playgroud)
之后,我想做以下事情:
- (CGSize) sizeOfShapeType:(ShapeType)type{
CGSize shapeSize = CGSizeMake(0, 0);
if (shapes != nil) {
for(Object2D* obj in shapes)
if (obj.figure == type) {
shapeSize = obj.size;
break;
}
}
return (shapeSize);
}
Run Code Online (Sandbox Code Playgroud)
但我总是得到一个EXEC_BAD_ACCESS,因为形状数组中的所有形状都是null.
如何检查Object2D是否为空?
我在这里得到例外:
for(Object2D* obj in shapes)
Run Code Online (Sandbox Code Playgroud) 我是iPhone开发新手,我正在使用XCode 4.2我试图保存一个NSMutable数组,这样当我关闭应用程序并重新打开它时,数据仍然在那里我使用这两个函数:
-(void)saveData{
[NSKeyedArchiver archiveRootObject:[data copy] toFile:[self dataFilePath]];
}
- (void)loadData
{
data = [NSKeyedUnarchiver unarchiveObjectWithFile:self.dataFilePath];
}
Run Code Online (Sandbox Code Playgroud)
但是我发现了两个主要问题:1-当我切换视图并返回时,当我完全退出应用程序时(即我双击主按钮并将其从正在运行的应用程序列表中删除)数据消失了数据也没有被删除
我发现我可以用这两种方法的NSMutableArray:writeToFile和initWithContentsOfFile ,但我不知道在哪里可以打电话给他们(是,当我将项目添加到UITableView中的?viewDidLoad?
有人可以给我一个示例代码吗?
提前致谢
我正在尝试将对象(NSNumbers)插入到NSMutable数组中,但是当我检查它时,objectAtElement总是返回0.
NSNumber *indexNum = [NSNumber numberWithInt:indexInt];
[last100 insertObject:indexNum atIndex:prevCount];
NSLog(@"Entry #%d : %d", prevCount, (int)[last100 objectAtIndex:prevCount]);
prevCount++;
Run Code Online (Sandbox Code Playgroud)
indexInt通过这种方法进入,我已经检查过它的有效性.indexNum也经过检查和比赛indexInt.问题NSLog(@"Entry #%d : %d", prevCount, (int)[last100 objectAtIndex:prevCount]);始终是回归
2012-01-08 14:08:11.551 ThoughtSpreader[20746:fb03] Entry #9 : 0 条目号将改变,但0始终存在.
哦,我每次插入新内容后都检查了[last100 count],它总是返回0,所以我相信它是如何插入NSMutable数组的问题
这些是我在项目中进行矩阵计算的一些代码.
它们是两个类方法和一个实例方法,用于创建矩阵并执行矩阵乘法运算.
matrics multiplication的方法效果不好,其结果是错误的.
+ (NSMutableArray *)arrayOfWidth:(NSInteger)width andHeight:(NSInteger)height {
return [[self alloc] initWithWidth:width andHeight:height];
}
- (id)initWithWidth:(NSInteger)width andHeight:(NSInteger)height {
if((self = [self initWithCapacity:height])) {
for(int i = 0; i < height; i++) {
NSMutableArray *inner = [[NSMutableArray alloc] initWithCapacity:width];
[self addObject:inner];
}
}
return self;
}
+ (NSMutableArray *)matrixA:(NSMutableArray *)matrixA multiplyMatrixB:(NSMutableArray *)matrixB {
int aRow = [matrixA count];
int aColumn = [[matrixA objectAtIndex:0] count];
int bRow = [matrixB count];
int bColumn = [[matrixB objectAtIndex:0] count];
NSMutableArray *newArray = [NSMutableArray arrayOfWidth:aRow …Run Code Online (Sandbox Code Playgroud) 谢谢你的时间和阅读.我想要做的是弄清楚为什么这NSLog告诉我NSArray无论如何总是空的.我认为问题是我发NSMutableArray错了.您是否可以看看并决定我是否做得对,如果可能的话,给我一个方法将数组传入NSMutableArray?
谢谢!
//Get Defaults
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *favoriteArray = [[defaults objectForKey:@"favorites"] copy];
//Declares Mutable Array
self.favorites = [[NSMutableArray alloc] initWithObjects:favoriteArray, nil];
NSLog(@"array: %@", favorites);
Run Code Online (Sandbox Code Playgroud)
更新:我明白了.事实证明,您必须使用initWithArray声明它,而不是尝试将其添加为对象
解:
- (void)viewDidLoad {
//Get Defaults
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
NSArray *favoriteArray = [[defaults objectForKey:@"favorites"] copy];
//Declares Mutable Array
self.favorites = [[NSMutableArray alloc] initWithArray:favoriteArray];
[super viewDidLoad];
}
Run Code Online (Sandbox Code Playgroud) 我有两个NSMutableArray.一个数组由数据库中的记录组成,另一个数组由来自webservices的记录组成.
我想使用一个唯一的密钥比较数据库阵列中的每条记录与Web服务数组中的每条记录barcodeID.此外,如果barcodeID键是相同的,那么我想从数组中删除该项.这就像我正在更新我的数据库记录.如果我们从Web服务获得相同的记录,那么我不想插入它们.
请帮助我,我无法打破这个逻辑.
我正在尝试将所选行添加到我的数组中.当我将第二个选定的行添加到myArray中时,第一个对象替换为第二个,每次我在myArray中只获得一个对象.这是我的表didSelectAtIndexPath:方法代码:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
if (cell.accessoryType == UITableViewCellAccessoryNone)
{
cell.accessoryType = UITableViewCellAccessoryCheckmark;
myArray = [[NSMutableArray alloc] init];
[myArray addObject:[Array1 objectAtIndex:indexPath.row]];
NSLog(@"myArray %@",myArray);
}
}
Run Code Online (Sandbox Code Playgroud)
谁能帮我.提前致谢
我是iOS开发的新手,我正在开发我的第一个应用程序.我有一段代码,假设我在分享时将数据从我的NSMutableArray添加到电子邮件正文中.我遇到了一个问题,数组描述只打印出数据的地址而不是实际的数据.我知道这是一种预期的行为,我如何在电子邮件正文中显示数组的内容?
这是我写的代码:
- (void)displayMailComposerSheet
{
MFMailComposeViewController *picker = [[MFMailComposeViewController alloc] init];
picker.mailComposeDelegate = self;
[picker setSubject:@"Attendance"];
NSString *data = [self.attendItems description];
[picker setMessageBody:data isHTML:NO];
[self presentViewController:picker animated:YES completion:NULL];
}
Run Code Online (Sandbox Code Playgroud) 我有一个包含各种字符串的数组.我想在索引3,7和9中选择一个对象 - 所以其他所有对象..我可以实现这一点.(假设我每次在数组中抓取一个对象时,我希望有80%的几率选择索引为3,7或9的对象)
这是我的数组:
NSMutableArray* animalImagesArray = [[NSMutableArray alloc] initWithObjects:@"bull.png",@"bunny.png",@"chicken.png",@"cow.png",@"crocodile.png",@"dog.png",@"donkey.png",@"duck.png",@"elephant.png",@"giraffe.png",@"goat.png",@"hippo.png",@"horse.png",@"lion.png",@"monkey.png",@"parrot.png",@"pig.png",@"rooster.png",@"sheep.png",@"snake.png",@"tiger.png",@"warthog.png",@"zebra.png", nil];
Run Code Online (Sandbox Code Playgroud)
任何帮助将不胜感激.提前致谢!
nsmutablearray ×10
objective-c ×8
ios ×5
arrays ×3
iphone ×3
cocoa ×1
cocoa-touch ×1
collections ×1
foundation ×1
uitableview ×1
xcode ×1
xcode4.2 ×1