0

我一直在研究这个链接的一些源代码 http://android-er.blogspot.com/2010/12/add-overlay-on-camera-preview.html

如果我想添加另一个按钮,我应该在这里做什么,我已经在 xml 中添加了按钮,但是它们不起作用,它们的源代码是:

LinearLayout layoutbg = (LinearLayout) findViewById(R.id.background);
    layoutbg.setOnClickListener(new LinearLayout.OnClickListener(){

        @Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {

            case (R.id.previous_btn):
            //some source   
showImage();
                break;

            case (R.id.next_btn):
    //some source           showImage();
                break;

            }

        }

        private void showImage() {
            // TODO Auto-generated method stub
    Toast.makeText(AndroidCamera.this, " User don't  ", Toast.LENGTH_SHORT);
        }

    });
    }
4

3 回答 3

2

让你的活动实施View.OnClickListener

之后在您的onCreate()方法中执行以下操作:

Button btn1= findViewById(R.id.previous_btn);
Button btn2= findViewById(R.id.next_btn);
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);

在实现后必须覆盖的 OnClick() 方法中,执行View.OnClickListener以下操作:

@Override
        public void onClick(View v) {
            // TODO Auto-generated method stub
            switch (v.getId()) {

            case (R.id.previous_btn):
            //some source   
showImage();
                break;

            case (R.id.next_btn):
    //some source           showImage();
                break;

            }

        }
于 2012-06-25T00:32:50.957 回答
-1

您应该将侦听器目录添加到按钮,而不是 LinearLayout... 并使用View.OnClickListener

只需转到您链接的教程的第二部分,“下一步:- 实现 Android 相机的 takePicture 功能”,有代码为按钮添加侦听器。

于 2012-06-25T00:19:20.343 回答
-1

问题可能出在您的 XML 中。Android 倾向于最后绘制位于 XML 文档底部的视图。这意味着如果您的按钮在文档中的位置高于它们顶部的表面,则用户的点击将点击您的 SurfaceView 而不是您的按钮。

例如,在这种情况下,您的按钮将不可点击:

<RelativeLayout
  ... >
    <Button ... />
    <SurfaceView
      android:layout_width="match_parent"
      android:layout_height="match_parent" />
</RelativeLayout>

但在这种情况下:

<RelativeLayout
  ... >
    <SurfaceView
      android:layout_width="match_parent"
      android:layout_height="match_parent" />
    <Button ... />
</RelativeLayout>
于 2012-06-25T01:27:46.847 回答