无法在Android中的活动中设置按钮侦听器

时间:2011-05-12 18:57:13

标签: android layout button map android-layout

我正在编写一个Android应用程序,其中我有一个Map活动,其中我有几个按钮,什么不是。我有一个map.xml用于布局。在这张地图中,我通过使用我在网上找到的这个库设置了注释和“注释气球”(我忘记了名字,但如果你们想知道我会找到它)。这部分工作正常。当我将一个按钮放在另一个xml(在“注释气球”覆盖xml中放置一个按钮)用于注释气球时,会出现问题。我想检测我的地图活动中的点击,但它似乎永远不会进入onClick方法。这就是我在设置监听器的活动中所做的事情:

    LinearLayout layout = new LinearLayout(getApplicationContext());
    LayoutInflater inflater = (LayoutInflater) getApplicationContext()
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v = inflater.inflate(R.layout.balloon_overlay, layout);

    Button quickPathfindButton = (Button) v.findViewById(R.id.map_quickpathfind_button);
    quickPathfindButton.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            quickPathfind();
        }
    });

似乎它永远不会进入onClick方法。你们知道为什么会这样吗?如果您不理解我的问题,请告诉我。用它来说很难说。

谢谢!

1 个答案:

答案 0 :(得分:1)

您正在将侦听器附加到视图层次结构中不属于该活动的按钮。尝试在xml中设置按钮的onClick属性,并在活动中编写方法。然后它应该在单击时自动调用该方法。