所以我创建了一个 ImageSwitcher,目标是当您向左或向右滑动时,将加载数组中的下一个 Image。然后,如果您单击 ImageSwitcher,它将使用当前显示的图像启动一个新的 Activity。
我遇到的问题是我无法让 ImageSwitcher 识别点击事件。我已经成功设置了 swipeRight 和 swipeLeft 手势,并且我尝试设置 onClickListener 但是当我单击 ImageSwitcher 时,没有任何反应。
任何帮助将不胜感激。
imgSwitcher = (ImageSwitcher) findViewById(R.id.highlights_image_switcher);
imgSwitcher.setFactory(new ViewSwitcher.ViewFactory() {
@Override
public View makeView() {
ImageView myView = new ImageView(getApplicationContext());
myView.setScaleType(ImageView.ScaleType.FIT_CENTER);
myView.setLayoutParams(new ImageSwitcher.LayoutParams(
ImageSwitcher.LayoutParams.MATCH_PARENT,
ImageSwitcher.LayoutParams.MATCH_PARENT));
return myView;
}
});
imgSwitcher.setOnTouchListener(new OnSwipeTouchListener(getBaseContext()) {
@Override
public void onSwipeLeft() {
highlightsNext();
}
@Override
public void onSwipeRight() {
highlightsPrevious();
}
});
imgSwitcher.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
highlightsAdvance(highlightIndex);
}
});