首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为ImageSwitcher设置onClickListener

为ImageSwitcher设置onClickListener
EN

Stack Overflow用户
提问于 2015-05-14 22:36:41
回答 1查看 511关注 0票数 0

所以我已经创建了一个ImageSwitcher,目标是当你向左或向右滑动时,加载数组中的下一个图像。然后,如果您单击ImageSwitcher,它将使用当前显示的图像启动一个新活动。

我遇到的问题是我不能让ImageSwitcher识别点击事件。我已经成功地设置了swipeRight和swipeLeft手势,并尝试设置onClickListener,但当我单击ImageSwitcher时,什么也没有发生。

任何帮助都将不胜感激。

代码语言:javascript
复制
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);
    }
});
EN

回答 1

Stack Overflow用户

发布于 2015-05-15 11:11:43

因此,对于任何想知道我的问题的人来说,我找到了答案。因为我已经实现了onSwipeTouchListener,所以不能同时实现onClick侦听器,因为它们都先侦听Down事件。因此,所有关闭的事件都会进入onSwipeTouchListener,因此onClickListener永远不会拾取任何东西。另外,我写了一些代码来解决这个问题,如果有人对此感兴趣,只需对此发表评论,我就可以把它放上来。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30240100

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档