我有一个好友系统,并想通过Users Worldrank(通过PlayFab)对其进行排序。
我想要最好的在顶部,最坏的在底部。
我使用以下脚本尝试了
private void sortfriendlist()
{
GameObject[] Friendcolumns = GameObject.FindGameObjectsWithTag("Friendcolumn");
for (int i = 0; i < Friendcolumns.Length; i++)
{
//If ranked
if (Friendcolumns[i].name.Substring(0, 1) != "F")
{
//Set Sibling (Rank)
int rank = int.Parse(Friendcolumns[i].name.Substring(0, 1));
Friendcolumns[i].transform.SetSiblingIndex(rank);
}
//If unranked
else
{
Friendswithoutrank[i] = Friendcolumns[i];
}
}
Debug.Log(Friendswithoutrank.Length + " Friends without Rank");
for(int i = 0; i < Friendswithoutrank.Length; i++)
{
Debug.Log(Friendswithoutrank[i].name + " has no Rank");
Friendcolumns[i].transform.SetAsLastSibling();
}
}
但是这不起作用,正如您在此处看到的
首先,我获得了所有好友并将其存储在数组中。之后,我通过检查GameObjects名称开头是否存在“ F”来检查玩家是否具有等级(无等级的朋友在Gameobject名称之前没有Ranknumber,因此名称以“ F”开头)。比我获得好友等级,并将SiblingIndex设置为等级。因此,通常应该按照我的想法对它进行排序。但是这个想法似乎行不通。
如果您有任何解决方法或将其改进的想法,请告诉我!
答案 0 :(得分:0)
使用Linq进行排序实际上可以容易得多(另请参见this thread):
library(shiny)
ui <- fluidPage(
selectizeInput(inputId='select',
label='Select something',
multiple=TRUE,
choices=letters[1:3])
)
server <- function(input, output){
observe({
print(input$select)
})
}
shinyApp(ui=ui, server=server)