2011-08-10 163 views
1

我试图在android中做一个随机数发生器。点击“生成”按钮后,我的代码必须以3个为一组开始生成数字。到目前为止,我已经编写了一个发生器,每个发生器可以产生有限的3个数字。我想创建一个动态生成器,不断产生numbers.CODE: `随机数发生器

public class Plot2Activity extends Activity { 
/** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    final Random myRandom = new Random(); 

    Button buttonGenerate = (Button)findViewById(R.id.generate); 
    final TextView textGenerateNumber = (TextView)findViewById(R.id.generatenumber); 

    buttonGenerate.setOnClickListener(new OnClickListener(){ 

    @Override 
    public void onClick(View v) { 
    // TODO Auto-generated method stub 
    ArrayList<Object> Arry1 = new ArrayList<Object>(); 
    for(int i=0;i<5;i++){ 
    ArrayList<Integer> Arry = new ArrayList<Integer>(); 
    for(int k=0;k<3;k++){ 
     Arry.add(myRandom.nextInt(100)); 
    } 
     Arry1.add(Arry); 
    } 
     textGenerateNumber.setText(String.valueOf(Arry1)); 
     } 
     }); 
    } 
} 

回答

0

做同样的过程在一个循环和更新从后台线程的数组。对于后面的线程看下面的链接,这可能会帮助你。

但是,如果您不想频繁生成,请在您的后台线程中放置sleep()一秒钟,然后让它更新您的阵列。

http://developer.android.com/reference/android/os/AsyncTask.html

快乐编码,

克里奥

文章可以帮助,

http://www.dailygeek.de/using-asynctask-to-update-a-listactivity/

上述文章显示了如何更新以类似的方式你ListActivity您可以更新你的阵列。

可以说,创造出具有AsycTask的活动,并创建一个单独的类,例如,

public class RandomNumbers{} 

上面的类将被生成的数字数组列表,

而且从更新这个类的对象最终可用于UI线程的背景。我希望我能够清楚。

+0

好的......非常感谢Krio – nino

+0

不要忘记接受我的答案,如果你喜欢它!谢谢,只需点击我答案左侧的绿色勾号 – doNotCheckMyBlog

+0

您可以发布一个小样本...至于如何从背景线程更新...我有链接问题。 – nino