关于android开发

时间:2010-01-26 07:10:29

标签: android

我正在做一个应用程序,我必须在Timer的帮助下随机自动显示TextView上的数字。我可以在日志中获取随机数而不重复,但我无法在设备上打印相同的请帮助我...

此致 Akki

来源:

//RandomNumber.java
public class RandomNumber extends Activity{
    static Random randGen = new Random();
    int tambolanum,count=0;

    private Button previousbutton;
    private Button startbutton;
    private Button nextbutton;

    int bingonum[]=new int[90];
    boolean fill;

    @Override public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.numbers);
        LinearLayout number=(LinearLayout)findViewById(R.id.numbersview);
        final TextView randomnum=(TextView)findViewById(R.id.numberstext);
        previousbutton=(Button)findViewById(R.id.previous);
        nextbutton=(Button)findViewById(R.id.next);
        startbutton=(Button)findViewById(R.id.start);
        startbutton.setOnClickListener(new OnClickListener() {

            public void onClick(View v) {
                // Perform action on click
                //--- Initialize the array to the ints 0-90
                do{
                    fill = true;
                    //Get new random number
                    tambolanum = randGen.nextInt(90) + 1;
                    //If the number exists in the array already, don't add it again
                    for(int i = 0; i < bingonum.length; i++)
                    {
                        if(bingonum == tambolanum)
                        {
                            fill = false;
                        }
                    }
                    //If the number didn't already exist, put it in the array and move 
                    //To the next position
                    if(fill == true)
                    {
                        bingonum[count] = tambolanum;
                        count++;
                    }
                } while(count < 90);
                for(i=0;i
                {
                    randomnum.setText(Integer.toString(bingonum[i]);
                } 
            }

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

你遇到的问题是你在这个循环的每次尝试中都覆盖了你的文本:

for(i=0;i  
{
    randomnum.setText(Integer.toString(bingonum[i]);
} 

您需要先构建字符串然后再设置它。类似的东西:

StringBuilder sb = new StringBuilder();
for(i=0;i  /* where's the rest of this for-statement? */
{
    sb.append(Integer.toString(bingonum[i]);
} 
randomnum.setText(sb.toString());