2011-04-29 106 views

回答

8

讓您的活動實施OnTouchListener:

public class MyActivity extends Activity implements OnTouchListener{ 

// All your code goes here 

@Override 
    public boolean onTouch(View arg0, MotionEvent arg1) { 
     this.finish(); 
     return false; 
    } 
} 
+1

這是正確的方法。 – Wroclai 2011-04-29 06:53:58

+1

@Viktor是的,OnTouchEvent有一個欺騙性的名字:/ – Aleadam 2011-04-29 06:55:59

+0

沒有必要實現監聽器。 onTouchEvent的工作原理沒有這樣做。 – pumpkee 2011-04-29 06:58:51

1

在您的活動中覆蓋onTouchEvent。

@Override 
public boolean onTouchEvent (MotionEvent e) { 
    this.finish(); 
    return false; 

} 
4

你可以重寫你的活動的onTouchEvent方法來完成它:

@Override 
public boolean onTouchEvent(MotionEvent event) 
{ 
    this.finish(); 
    return true; 
} 
+2

僅供參考,從活動參考頁:'公共布爾的onTouchEvent( MotionEvent事件)* *當觸摸屏事件未由其下的任何視圖處理時調用。這對於處理髮生在窗口範圍之外的觸摸事件非常有用,在那裏沒有接收它的視圖*。 **所以,如果任何視圖處理它,這個方法可能永遠不會被調用** – Aleadam 2011-04-29 06:58:32

+0

你是完全正確的,我選擇了這個實現,因爲@seethalakshmi說沒有控件只是在這個活動中顯示一些文本,我假設沒有方法'OnTouchListeners'將在早期實施。 – rekaszeru 2011-04-29 07:05:10