按钮单击事件未在viewflipper的第二个视图中触发

时间:2010-06-17 20:46:33

标签: android events viewflipper

我在xml中有一个布局,当用户点击我膨胀的“下一个”按钮时,填充下一个屏幕的数据,并在新视图中为图像按钮创建和设置onclicklistener。然后我将此视图添加到我的主ViewFlipper并在其上调用showNext()。视图滑动到位,按钮在那里,但有问题:

  1. 按钮图像是正方形但是是透明的,因此唯一可见的部分是圆形,除非显示第二个视图,您会看到一个灰色的方形按钮,顶部有一个圆圈。

  2. 点击事件永远不会触发。灰色方块改变颜色以指示单击(不是应该看到的圆形部分,如果它正常工作将改变其颜色)但是监听器中的onClick事件永远不会执行。

  3. 这在我第一次执行此过程时非常有效(膨胀,创建onClickListener,添加到ViewFlipper-尽管我第一次不调用showNext)。

    有人见过这样的事吗?这让我发疯了

2 个答案:

答案 0 :(得分:1)

我刚刚花了四个小时搞清楚这一点。我认为这只是一个解决方法,但它让我到了可以让我的按钮点击视图的地方比第一个更远。
在你的xml中,使用 -

  

机器人:的onClick = “的onClick”

然后在您的代码中,使用以下格式来收听您的按钮事件..

    public void onClick(View vw) 
     {
        switch (vw.getId()) 
       {
        case R.id.continue_button:
            if(verifyAllTasksCompleted()){
                currentPage++;
                updateView();
            }
            break;

希望这会对你有所帮助。 光圈

答案 1 :(得分:1)

从ViewFlipper中移除进/出动画,或者设置:

android:fillAfter="false"
android:fillBefore="false"
您输入/输出动画上的

将解决问题,并且您可以使用onClick侦听器上定义的标准XML。