Ok, Dutt was right and I would like to give him credit for this. I modified my code to measure the gestures a little more accurately and in case anyone would like to use this code, it's below. I'm going to have to modify the sensitivity a little bit since up-left is not going to have as high numbers as a straight up, but this is a really solid starting point.
public boolean onFling(MotionEvent e1, MotionEvent e2,
float velocityX, float velocityY) {
try {
double xDir = e1.getX() - e2.getX();
double yDir = e1.getY() - e2.getY();
Log.d("Console","xVel = " + xDir);
Log.d("Console","yVel = " + yDir);
if ( xDir > SWIPE_THRESHOLD_VELOCITY) {
if( yDir > SWIPE_THRESHOLD_VELOCITY) {
//Up-Left swipe
GameWindow.writeToOutput("northwest");
}
else if ( yDir < -SWIPE_THRESHOLD_VELOCITY){
//Down-Left swipe
GameWindow.writeToOutput("southwest");
}
else{
//Left swipe
GameWindow.writeToOutput("west");
}
return true;
} else if (xDir < -SWIPE_THRESHOLD_VELOCITY) {
if( yDir > SWIPE_THRESHOLD_VELOCITY) {
//Up-Right swipe
GameWindow.writeToOutput("northeast");
}else if ( yDir < -SWIPE_THRESHOLD_VELOCITY){
//Down-Right swipe
GameWindow.writeToOutput("southeast");
}
else {
//Right swipe
GameWindow.writeToOutput("east");
}
return true;
}
if ( yDir < -SWIPE_THRESHOLD_VELOCITY) {
//Down swipe
GameWindow.writeToOutput("south");
return true;
}
if ( yDir > SWIPE_THRESHOLD_VELOCITY) {
//Up swipe
GameWindow.writeToOutput("north");
return true;
}
} catch (Exception e) {
Log.e("YourActivity", "Error on gestures");
}
return false;
}