簡體   English   中英

如何在iphone中將NSArray數據分配給NSMutableArray?

[英]How to assign NSArray data to NSMutableArray in iphone?

在我的應用程序中,我有一個包含一些數據的NSArray。 我想獲取該數據並將其放入名為subArrayDataNSMutableArray 我能夠將我的第一個數組中的數據插入到可變數組中,但是當應用程序運行時,我得到:

警告:從'nsarray *'分配給'nsmutablearray *'的指針類型不兼容請幫幫忙。

以下是我的代碼:.h文件

#import <UIKit/UIKit.h>

@interface AddNew : UIViewController
{
    NSMutableArray *subArrayData;;
}
@property(nonatomic ,retain)NSMutableArray *subArrayData;

.m文件

#import "AddNew.h"
#import "DashBoardPage.h"
#import "SubmitYourListing.h"


@implementation AddNew

@synthesize subArrayData;

-(void)accommodationAndTravel
{
    subArrayData =[[NSArray alloc] initWithArray:[NSArray arrayWithObjects:@"Select one",@"Accommodation and travel hospitality",@"Apartments and villas",@"Bed and Breakfast",@"Caravan parks and campsites",@"Hospitality",
                                                  @"Hotels and Motels",@"Snow and Ski lodges",@"Tourist attractions and tourism information",@"Tours and Holidays",@"Travel agents and Services",nil]];


}

您可以通過調用其-mutableCopy方法將任何NSArray轉換為NSMutable數組:

NSArray *someArray = ...;
NSMutableArray* subArrayData = [someArray mutableCopy];

更改.m文件

#import "AddNew.h"
#import "DashBoardPage.h"
#import "SubmitYourListing.h"


@implementation AddNew

@synthesize subArrayData;

-(void)accommodationAndTravel
{
    subArrayData =[[NSMutableArray alloc] initWithArray:[NSArray arrayWithObjects:@"Select one",@"Accommodation and travel hospitality",@"Apartments and villas",@"Bed and Breakfast",@"Caravan parks and campsites",@"Hospitality",
                                                  @"Hotels and Motels",@"Snow and Ski lodges",@"Tourist attractions and tourism information",@"Tours and Holidays",@"Travel agents and Services",nil]];


}

只需調用一個NSMutableArray的初始值設定項,如下所示:

subArrayData = [[NSMutableArray alloc] initWithObjects:
                                        @"Select one",
                                        @"Accommodation and travel hospitality",
                                        @"Apartments and villas",
                                        @"Bed and Breakfast",
                                        @"Caravan parks and campsites",
                                        @"Hospitality",
                                        @"Hotels and Motels",
                                        @"Snow and Ski lodges",
                                        @"Tourist attractions and tourism information",
                                        @"Tours and Holidays",
                                        @"Travel agents and Services",
                                        nil]];

對於處理現有NSArray ,您可以制作mutableCopy

- (id)initWithArray:(NSArray *)array
{
  self = [super init];
  if (nil != self) {
    subArrayData = [array mutableCopy];
    ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM