在我的應用程序中,我有2個按鈕,允許用戶通過「名稱」或「分數」對單元格進行排序。我遇到了排序問題 - 我如何檢查單元格是否已經通過這兩個類別排序。單擊按鈕後,對UITableViewSource中的單元格進行排序。 c#Xamarin
我是Xamarin的新人,至今我都沒有提出任何問題。
我已經排序列表並獲得通用結果,但僅用於第一次排序,即升序。提前
nameSort.TouchUpInside += (sender, e) =>
{
Sort(ascending, "name");
tableView.ReloadData();
};
scoreSort.TouchUpInside += (sender, e) =>
{
Sort(ascending, "score");
tableView.ReloadData();
};
感謝:
而且這並沒有爲我工作:
var orderedByAsc = list.OrderBy(l => l.name);
if (list.SequenceEqual(orderedByAsc))
{
ascending = true;
}
var orderedByDsc = list.OrderByDescending(l => l.name);
if (list.SequenceEqual(orderedByDsc))
{
ascending = false;
}
排序:
void Sort(bool ascending, string type)
{
if (type.Equals("name"))
{
if (ascending)
{
list.Sort((x, y) => x.name.CompareTo(y.name));
}
else
{
list.Sort((x, y) => -1 * x.name.CompareTo(y.name));
}
}
else
{
if (ascending)
{
list.Sort((x, y) => x.score.CompareTo(y.score));
}
else
{
list.Sort((x, y) => -1 * x.score.CompareTo(y.score));
}
}
}
按鈕事件!