2012-08-05 90 views
0
  1. 我有2個按鈕
  2. 當我以10秒單擊後退按鈕我正在延緩退出
  3. 如果當中的2個任意按鈕按下按鈕,然後我想停止應用程序退出。
  4. 如果未檢測到任何按鈕,請繼續退出。

公共類MainActivity擴展活動{如何檢測,而另一個進程按任何按鈕運行和檢測回採後運行的進程

int count=0; 
boolean pressed; 
Button b1,b2; 
TextView t1; 
Thread t; 
@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    b1= (Button) findViewById(R.id.button1); 
    b2= (Button) findViewById(R.id.button2); 
    t1 = (TextView) findViewById(R.id.textView2); 

    b1.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 

      pressed=true; 
      t1.setText("Button1 Pressed"); 
      System.out.println("Button1"); 


     } 
    }); 
    b2.setOnClickListener(new OnClickListener() { 

     @Override 
     public void onClick(View arg0) { 

      pressed=true; 
      t1.setText("Button2 Pressed"); 
      System.out.println("Button2"); 


     } 
    }); 
} 
/* (non-Javadoc) 
* @see android.app.Activity#onBackPressed() 
*/ 
@SuppressLint("ParserError") 
@Override 
public void onBackPressed() { 
    System.out.println("Inside Back Button"); 
    pressed=false; 
    t = new Thread(new ABC(), "My Thread"); 

    t.start(); 
    System.out.println("OutSide while Loop in BACKBUTTON"); 
    if(pressed==true){ 
     System.out.println("Button 1 or 2 Pressed"); 
     t.interrupt(); 
     System.out.println("Stopping Thread forcefully"); 

     count =0; 
    } 
    if(pressed==false){ 
     System.out.println("Button 1 or 2 NOT Pressed"); 
     t.stop(); 
     super.onBackPressed(); 
    } 
} 


public class ABC implements Runnable{ 



    @Override 
    public void run() { 
     System.out.println("Inside Thread"); 
     do{ 
      count++; 
      System.out.println(count); 

     } 
     while((count <1000) && (pressed==false)); 
     System.out.println("OutSide while Loop"); 

    } 

} 

}

回答

相關問題