public View onCreateView( ....)
{
sv = (ScrollView)view.findViewById(R.id.scrollViewtest);
sv.setOnTouchListener(new View.OnTouchListener() {
public int TotalH=0;
public int oneH=0;
@Override
public boolean onTouch(View v, MotionEvent event) {
if(TotalH==0) TotalH = v.getHeight(); //取總長
if(oneH==0) oneH = TotalH/14; //14 = Number Of EditView about this page. ,每一個EditView的長度
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN : //Scroller被按下
break;
case MotionEvent.ACTION_MOVE : //Scroller被移動
//getScrollY()會取rollBar頂端的位座標
int nowPostion = v.getScrollY()/oneH; //nowPostion 表示說滾動條滾掉到第幾個EditView的底端了
for(int i=0;i<nowPostion;i++)
{
//當移動得時候,判斷移動到哪邊 再對已經滾到看不見的EditView取消Focus
//我假設editText[14]這樣來表示。
editText.clearFocus();
}
break;
case MotionEvent.ACTION_UP: //Scroller被結束一次滑的動作
break;
default :
break;
}