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

リンクしたチュートリアルの 2 番目の部分「次: - 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 に答える