-2
我有一個iOS應用程序,我正在使用嵌套字典將數據提供給表視圖。字典的結構是:訪問嵌套字典中的單個元素
Dictionary<string1, Dictionary<string2, string3>> dict;
(I have named the strings here for clarification purposes)
我目前無法訪問此嵌套字典中的單個元素。我想將string1
作爲單元格標題,string2
爲單元格文本標籤,string3
爲單元格詳細文本標籤。這是我目前用表數據源的方法:
public class SupervisionDetailSource:UITableViewSource
{
Dictionary<string, Dictionary<string, string>> dict;
string Identifier = "cell";
public SupervisionDetailSource(Dictionary<string, Dictionary<string, string>> dict)
{
this.dict = dict;
}
public override string TitleForHeader(UITableView tableView, nint section)
{
return dict.Keys.ElementAt((int)section);
}
public override UITableViewCell GetCell(UITableView tableView, NSIndexPath indexPath)
{
UITableViewCell cell = tableView.DequeueReusableCell(Identifier);
if (cell == null)
cell = new UITableViewCell(UITableViewCellStyle.Subtitle, Identifier);
//this is not right
cell.TextLabel.Text = dict[supvList.Keys.ElementAt(indexPath.Section)][dict[dict.Keys.ElementAt(indexPath.Row)]]; //string2
cell.DetailTextLabel.Text = string3 ...?
return cell;
}
public override nint RowsInSection(UITableView tableview, nint section)
{
string key = dict.Keys.ElementAt((int)section);
return dict[key].Count;
}
public override nint NumberOfSections(UITableView tableView)
{
return dict.Keys.Count;
}
}
感謝您的幫助
你所說的 「不對」 是什麼意思? – Alexander
@AMomchilov我的意思是我目前的方法來訪問我的字典'string2'是不正確的/不可編譯 – panthor314
這並不告訴我任何我不知道的東西。這是一個編譯器錯誤?如果是這樣,那麼錯誤信息是什麼?它是運行時錯誤嗎?如果是這樣,什麼是堆棧跟蹤?這是一個邏輯錯誤?如果是這樣,那麼實際產出和預期產出是多少? – Alexander