ImageButton 似乎没有检测到点击(Scene2d.ui)
Posted
技术标签:
【中文标题】ImageButton 似乎没有检测到点击(Scene2d.ui)【英文标题】:ImageButton doesn't seem to detect clicks (Scene2d.ui) 【发布时间】:2012-05-10 07:23:29 【问题描述】:当尝试在舞台上放置一个简单的 ImageButton 时,它似乎没有检测到点击。
ImageButton btnStart = new ImageButton(ButtonArt.UP, ButtonArt.DOWN));
// btnStart.setClickListener(new ClickListener()
// @Override
// public void click(Actor a, float arg1, float arg2)
// a.visible = false;
//
// );
stage.addActor(btnStart);
ButtonArt.UP 和 ButtonArt.DOWN 是每个状态的 TextureRegions。 现在,当我单击按钮时,它不会改变状态!我也尝试了上面的 ClickListener(用于测试),但似乎也没有用。
在我的渲染方法中,我只调用 stage.act() 和 stage.render()。 我还尝试在我的渲染方法中使用 SpriteBatch 绘制 TextureRegions,它们实际上是不同的纹理。
我是不是做错了什么?
【问题讨论】:
【参考方案1】:您需要将舞台设置为您的输入处理器:
Gdx.input.setInputProcessor(stage);
如果您需要多个输入处理器(例如,您需要在场景外注册点击),则需要使用 InputMultiplexer,如下所示:
InputMultiplexer plex = new InputMultiplexer();
plex.addProcessor(myOtherProcessor);
plex.addProcessor(stage);
Gdx.input.setInputProcessor(plex);
【讨论】:
谢谢,我不知道你必须设置 inputProcessor。以上是关于ImageButton 似乎没有检测到点击(Scene2d.ui)的主要内容,如果未能解决你的问题,请参考以下文章
连续滚动 UICollectionView iOS 时未检测到点击?