package
com.example.imageswitch;
import
android.app.Activity;
import
android.os.Bundle;
import
android.view.Menu;
import
android.view.MenuItem;
import
android.view.MotionEvent;
import
android.view.View;
import
android.view.View.OnTouchListener;
import
android.widget.ImageSwitcher;
import
android.widget.ImageView;
import
android.widget.ViewSwitcher.ViewFactory;
public
class
MainActivity
extends
Activity
implements
ViewFactory ,OnTouchListener{
private
ImageSwitcher imageSwitch;
private
int
[] images={
R.drawable.kobe0,
R.drawable.kobe1,
R.drawable.kobe3,
R.drawable.kobe4,
R.drawable.kobe6,
};
private
int
index;
@Override
protected
void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageSwitch=(ImageSwitcher) findViewById(R.id.imageSwitcher1_1);
imageSwitch.setFactory(
this
);
imageSwitch.setOnTouchListener(
this
);
}
@Override
public
View makeView() {
ImageView imageView=
new
ImageView(
this
);
imageView.setImageResource(images[
0
]);
return
imageView;
}
float
startx=
0
.0F;
float
endx=
0
.0F;
@Override
public
boolean
onTouch(View v, MotionEvent event) {
if
(event.getAction()==MotionEvent.ACTION_DOWN){
startx=event.getX();
return
true
;
}
else
if
(event.getAction()==MotionEvent.ACTION_UP){
endx=event.getX();
if
(startx-endx>
20
){
index=(index+
1
)<(images.length-
1
)?++index:
0
;
imageSwitch.setImageResource(images[index]);
imageSwitch.setInAnimation(
this
, android.R.anim.fade_in);
imageSwitch.setOutAnimation(
this
, android.R.anim.fade_out);
}
if
(endx-startx>
20
){
index=(index-
1
)>
0
?--index:images.length-
1
;
imageSwitch.setImageResource(images[index]);
imageSwitch.setInAnimation(
this
, android.R.anim.slide_in_left);
imageSwitch.setOutAnimation(
this
, android.R.anim.slide_out_right);
}
}
return
true
;
}
}