更新變量我有一個OnTouch和更新包含屏幕座標信息變量下一個setOnTouchListener。問題是它似乎無法更新它們。在第78行,RGB.setText(test);它永遠不會從0.0改變。如果我要將該行及其上面的行移動到onTouch中,它會更新。任何想法是什麼錯誤?謝謝。問題訪問內OnTouch
package com.evankimia.huskybus;
import com.test.huskybus.R;
進口android.app.Activity; import android.os.Bundle; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.widget.TextView;
公共類HuskyBus延伸活動{
TextView RGB;
private CampusMap mCampusMap;
private float startX = 0; //track x from one ACTION_MOVE to the next
private float startY = 0; //track y from one ACTION_MOVE to the next
float scrollByX = 0; //x amount to scroll by
float scrollByY = 0; //y amount to scroll by
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
RGB = (TextView) findViewById(R.id.coordBox);
mCampusMap = (CampusMap) findViewById(R.id.map);
mCampusMap.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
// TODO Auto-generated method stub
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
// Remember our initial down event location.
startX = event.getRawX();
startY = event.getRawY();
break;
case MotionEvent.ACTION_MOVE:
float x = event.getRawX();
float y = event.getRawY();
// Calculate move update. This will happen many times
// during the course of a single movement gesture.
scrollByX = x - startX; //move update x increment
scrollByY = y - startY; //move update y increment
startX = x; //reset initial values to latest
startY = y;
mCampusMap.invalidate();
break;
}//end switch
return false;
}
;
}); //end onDraw?
字符串測試= 「」 + scrollByX; RGB.setText(test);
}
}
謝謝,但我真的很努力做的就是變量scrollByX和scrollByY訪問主類。我有一個通過thisClass.scrollByX引用此類的自定義視圖,但由於某些原因,變量不會在onTouchListener內更新,因此它永遠不會從0更改。 – 2010-05-29 16:51:53