0
- 我有2個按鈕
- 當我以10秒單擊後退按鈕我正在延緩退出
- 如果當中的2個任意按鈕按下按鈕,然後我想停止應用程序退出。
- 如果未檢測到任何按鈕,請繼續退出。
公共類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");
}
}
}
謝謝你的幫助 – 2012-11-02 08:36:43