现在的位置: 首页 > 综合 > 正文

No 109 · android AsyncTask

2014年02月10日 ⁄ 综合 ⁄ 共 883字 ⁄ 字号 评论关闭

当点击按钮btnStart时 ,开辟新线程等待8秒。这时点击按钮btnEnd依然可以执行 System.out.println("这就是异步操作");

       也就是说 btnStart 的操作不会影响btnEnd的输出,它们两个分别处在不同的线程

btnEnd = (Button) findViewById(R.id.btnEnd);//异步操作
        btnEnd.setOnClickListener(new OnClickListener() {			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				System.out.println("这就是异步操作");
			}
		});
        btnStart=(Button)findViewById(R.id.btnStart);//开始延迟
        btnStart.setOnClickListener(new OnClickListener() {			
			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				myAsyncTask task=new myAsyncTask();
				task.execute();
			}
		});

 

/**
     * 异步操作
     * @author Administrator
     *
     */
    class myAsyncTask extends AsyncTask<Void, Void, Void>{
		@Override
		protected Void doInBackground(Void... params) {
			// TODO Auto-generated method stub
			Thread t = new Thread(new Runnable() {
				public void run(){
					try {
						Thread.sleep(8000);
						System.out.println("8秒过后");
					} catch (Exception e) {
						// TODO: handle exception
						e.printStackTrace();
					}
				}
			});
			t.start();
			return null;
		}
    }

 

 

 

抱歉!评论已关闭.