2012-03-09 117 views
-1

您好,我正在开发android应用程序。我对如何在其他textview文本发生更改时如何更改一个textview文本有一些疑问。 让我们说我有四个字段n1,n2显示名称和s1,s2显示分数。 n1=android1,n2=android2,s1=30,s2=50当其他textview文本更新时如何更新一个textview文本

应用排序的分数(降序)之后我能得分排序,但在同一文本view.how名称仍然可以改变我的名字的时候太在这个例子中。 后排序n1=android1,n2=android2,s1=50,s2=30 在此先感谢...请尽快作出回应,如果任何知道我怎么可以这样......

+0

如果排序得分阵列比相同的逻辑,为什么不试着改变你的名字排列在分数相同的循环 – Khan 2012-03-12 05:32:48

+0

我不能让你可以请详细说明一些样品.. – 2012-03-12 06:26:41

+0

我已经给了一个ans的简单城市尝试检查 – Khan 2012-03-12 07:09:59

回答

1

假设您的姓名阵列

 String[] name={"yuvi","sachin","dravid","sehvag"}; 
     int[] score={15,8,89,10}; 
     for(int i=0;i<score.length;i++){ 
      for(int j=i+1;j<score.length;j++){ 
       if(score[i] < score[j]){ 
        int tempsc=score[i]; 
        String tempname=name[i]; 
        score[i]=score[j]; 
        name[i]=name[j]; 
        score[j]=tempsc; 
        name[j]=tempname; 
       } 
      } 
     } 
0

您也可以尝试像这样...

EditText[20] e1; 
String[10] names;<----- array of your names 
Int[10] scores;<----- array of your scores 
String[10] temp; 
for(int g=0;g<10;g++) 
{ 
temp[g]=String.valueOf(scores[g])+"-"+names[g]; 
} 
Arrays.sort(temp); 
for(int g=0;g<10;g++) 
{ 
String[] T=temp[g].split("-") 
e1[g].setText(t[1]);<----- name 
e1[g+10].setText(t[0]);<----- score 
} 

认为这是非常容易的.. =]

+0

雅这工作正常我感谢raju ... wt邻接,如果我有20 textviews 10 for名称和10的分数,实际上我必须显示前十名的名字,但我只给了2例如。请让我知道如何可以点20 20 textviews如果可能.... – 2012-03-09 10:27:07

+0

然后我认为你可以做到这一点[但这是obvioisly不是更好的方式..但只是一个解决方案...] ..创建2阵列.. 1名称和其他分数..现在我认为你已经有一个完整的分数和相应的名称阵列。 ..一旦你申请排序得分和得分...现在说30是最高得分..从未排序的数组得到它的索引..并得到名称在该索引..从名称数组.. ..然后你可以改变名字也...我清楚了吗? :S – 5hssba 2012-03-09 11:12:45

+0

一些什么清楚确定让我尝试在这个wasy反正谢谢raju ... – 2012-03-09 11:16:42