ZoomButtonsController不工作

时间:2011-01-31 17:16:46

标签: java android

我将控制器的容器添加到布局中。当我尝试调用controller.setVisible(true)时(在触摸事件中),我得到了这个异常:

  

java.lang.RuntimeException:view   android.widget.ZoomButtonsController$Container@44c1e490   被添加,但它已经有了   父

以下是添加控制器的代码:

final TextView xView = (TextView)findViewById( R.id.xView);
final ZoomButtonsController controller = new ZoomButtonsController(xView );
ViewGroup zoomControlContainer = controller.getContainer();
LinearLayout layout = (LinearLayout) findViewById(R.id.parent_layout);
layout.addView(zoomControlContainer);
controller.setAutoDismissed(true);

处理触摸事件的代码:

   xView.setOnTouchListener(new View.OnTouchListener() {
        @Override
        public boolean onTouch(View v, MotionEvent event) {
            controller.setVisible(true);
            return false;
        }
    });

如果我不添加容器,controller.setVisible(true)无论如何都没有效果。有什么指针吗?

2 个答案:

答案 0 :(得分:0)

看一下this question我认为Mark Murphy能够很好地解释你应该做什么,以及如果你仍然遇到问题你应该如何调试它。

答案 1 :(得分:0)

查看thisthis

为什么不使用:

mapView = (MapView) findViewById(R.id.mapview);
mapView.setBuiltInZoomControls(true);