此外,是否可以存入隐藏价值?
例,
隐藏ID为“1”的“公共”
隐藏ID为“2”的“会员”等等.
这两个值来自Web服务.顺便说一句,我正在使用ASIhttpRequest框架.
我是iOS / XCode / Objective C的新手.希望有人能帮忙):谢谢
===============回复================
@MSgambel
好吧,尽我所能解释.至于现在,我们如何将项目放入UIPickerVIEw:
[NSArray arrayWithObjects:@“John Appleseed”,@“Chris Armstrong”,@“Serena Auroux”,@“Susan Bean”,@“Luis Becerra”,@“Kate Bell”,@“Alain BrIEre”,nil];
而不是上面的那些项目,如何将项目从Web服务填充到选择器?
@Akshay
我隐含的意思是选择器将有2个值,但只有标签“Public”在选择器上可见而不是ID“1”.我想实现它有点类似于网站上的下拉菜单.
在名为“Domain”的数据库中,我们使用以下格式的值:
DomainID:Domainname
1:公开
2:CompanyA
3:CompanyB
将有另一个数据库“Users”,它与DomainID绑定. (只是一个例子)
选择器将在界面上显示“Public”,当用户选择它时,它将具有值“1”.那么无论如何我可以做这样的事情吗?
解决方法 首先,您没有提供有关Web服务详细信息的大量详细信息.假设它是基于SOAP的,那么我强烈推荐 sudzc或 wsd2lobjc.这些将为您生成代码,以便将您的WSDL def转换为Objective C类.至于UIPickerVIEw“隐藏”值的问题,这个很简单.创建一个NSDrray的NSArray.使用您的示例(假设所有都是字符串):
NSDictionary * dictOne = [NSDictionary dictionaryWithObjectsAndKeys:@“1”,@“realValue”,@“Public”,@“looksGoodValue”,nil];
NSDictionary * dictTwo = [NSDictionary dictionaryWithObjectsAndKeys:@“2”,@“CompanyA”,@“lookingGoodValue”,nil];
NSDictionary * dictTre = [NSDictionary dictionaryWithObjectsAndKeys:@“3”,@“CompanyB”,nil];
array = [NSArray arrayWithObjects:dict1,dict2,dict3,nil];
并在您的UIPickerVIEwDelegate方法中
– (Nsstring *)pickerVIEw:(UIPickerVIEw *)pickerVIEw TitleForRow:(NSInteger)row forComponent:(NSInteger)component {
return [[self.array objectAtIndex:row] objectForKey:@“looksGoodValue”];
}
最后在你使用pickervIEw的任何地方(比如你的网络服务)
request.realValue = [[self.array objectAtIndex:[pickerVIEw selectedRowInComponent:0]] valueForKey:@“realValue”];
希望这可以帮助!
总结以上是内存溢出为你收集整理的iphone – 如何将数据从Web服务填充到UIPickerView中? [iOS应用开发]全部内容,希望文章能够帮你解决iphone – 如何将数据从Web服务填充到UIPickerView中? [iOS应用开发]所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)