gpt4 book ai didi

iphone - 如何在 UIActionSheet 的按钮中显示 NSArray 对象

转载 作者:可可西里 更新时间:2023-11-01 06:20:50 25 4
gpt4 key购买 nike

我试图用 NSArray 的结果填充 UIActionSheet 按钮列表。我有 cityTitleNodeArray,它是一个 NSArray(下面的 nslog 输出)。目前它只显示 NSArray 中的第一个项目作为 UIActionSheet

中的第一个按钮

我希望它看起来像这样(除了数组信息应该全部来自 cityTitleNodeArray):

enter image description here

   NSArray *array = [[NSArray alloc] initWithObjects: cityTitleNodeArray, @"city2", @"city3", @"city4", @"city5", @"city6", @"city7", @"city8",@"city9", @"city10", @"city11", @"city12", @"city13", @"city14", @"city15", @"city16", nil];


UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Title Here"
delegate:self
cancelButtonTitle:nil
destructiveButtonTitle:nil
otherButtonTitles:nil];

for (NSString *title in array) {
[actionSheet addButtonWithTitle:title];
}

[actionSheet addButtonWithTitle:@"Cancel"];
actionSheet.cancelButtonIndex = [array count];

[actionSheet showInView:self.view];




-(void)requestCityData {

NSError *requestError = nil;

NSString *savedValue = [[NSUserDefaults standardUserDefaults] stringForKey:@"token"];

NSString *stringWithToken = [NSString stringWithFormat:@"%@&token=%@",kCityURL, savedValue];

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:stringWithToken]];

NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:&requestError];

NSError *jsonParsingError = nil;

if (requestError) {
NSLog(@"sync. request failed with error: %@", requestError);
}
else {
// handle data
NSDictionary *publicData = [NSJSONSerialization JSONObjectWithData:response options:0 error:&jsonParsingError];

publicCityDataArray = [publicData objectForKey:@"data"];

for (NSDictionary *publicCityDataDict in publicCityDataArray) {

cityTitleNodeArray = [publicCityDataDict objectForKey:@"name"];
NSLog(@"cityTitleNodeArray from requestCityData output is %@",cityTitleNodeArray);

}

}

}

cityTitleNodeArray 输出是:

`cityTitleNodeArray` from `requestCityData` output is Roma
2013-09-16 12:49:28.001 1000 [3980:907] cityTitleNodeArray from requestCityData output is Milano
2013-09-16 12:49:28.002 1000 [3980:907] cityTitleNodeArray from requestCityData output is Rimini
2013-09-16 12:49:28.002 1000 [3980:907] cityTitleNodeArray from requestCityData output is Venezia
2013-09-16 12:49:28.003 1000 [3980:907] cityTitleNodeArray from requestCityData output is Firenze
2013-09-16 12:49:28.003 1000 [3980:907] cityTitleNodeArray from requestCityData output is Napoli

最佳答案

NSArray *array = [[NSArray alloc] initWithObjects:
@"1st Button",
@"2nd Button",
@"3rd Button",
@"4th Button",
nil];

UIActionSheet* actionSheet = [[UIActionSheet alloc] init];

actionSheet.title = @"Cities Name";

actionSheet.delegate = self;

for(int i=0;i<[array count];i++)

{

[actionSheet addButtonWithTitle:[array objectAtIndex:i]];

}

actionSheet.cancelButtonIndex = [actionSheet addButtonWithTitle:@"Cancel"];

[actionSheet showInView:[UIApplication sharedApplication].keyWindow];

关于iphone - 如何在 UIActionSheet 的按钮中显示 NSArray 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18827534/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com