0

私は Android アプリケーションで少し問題があります。

方法はいくつかありますが(方法はわかりません):

  1. Android カメラの使用

    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_OUTPUT, imageUri);
    intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
    activity.startActivityForResult(intent, Picture.CAMERA);
    

    このため、このインテントを透過的に開始し、重なった画像を下に置くなどのことを行う必要があります。

  2. XML にカメラを含めて、必要な変更を行うか、このようなことを行います。

  3. Androidカメラのソースコードをどこかからダウンロードして、必要に応じて変更して、アプリケーションを製品化します。(ライセンスでこれができるかどうかはわかりません)。

  4. 自分のカメラを作成します (これは見苦しく、最後の選択です)。

良いアイデアは大歓迎です。

よろしくお願いします!

4

2 に答える 2

0

私はこれを自分でやったことがあります - 当時、他の人を見つけられませんでした。これについては、カメラの意図に頼ることはできません。私が使用するアプローチは、カメラのプレビューを使用することです。これは、クラスに記述してから、フレーム レイアウトの xml に含めることができます。同じレイアウトに全画面表示の画像を含めます。特に画像を追加/削除するときは、zorderなどをいじる必要があります。

カメラ プレビューを制御するクラスを作成するのは困難に思えるかもしれませんが、実際には非常に簡単で、単純にカメラ インテントを使用するよりもはるかに多くの制御が可能です。詳しくはこちらをご覧ください。

于 2012-12-18T22:57:53.530 に答える
0

LayoutInflater を試す

以下のように:

//メインレイアウト first.xml

setContentView(R.layout.preview_camera); 

// 別の second.xml ファイル

controlInflater1 = LayoutInflater.from(getBaseContext());
     View viewControl1 = controlInflater.inflate(R.layout.frame_layout, null);
     LayoutParams layoutParamsControl1
      = new LayoutParams(LayoutParams.FILL_PARENT,
      LayoutParams.FILL_PARENT);
     this.addContentView(viewControl1, layoutParamsControl1);

LayoutInflater のドキュメントを読んでください。

于 2013-08-14T08:29:50.243 に答える