Androidは、プレビューなしの写真撮影機能を迅速に実現します。
本論文の例では、Androidのプレビューなし撮影機能を実現するための具体的なコードを共有しています。
実現の考え方:
プレビューのSurfaceViewの幅の高さを肉眼では見えない値に設定します。例えば0.1 dpです。他はカスタムカメラの標準ステップです。
もちろん、インターネットでカスタマイズしたカメラの文章は多く行きました。これ以上古い話をすることはできません。ここでは使いやすい第三者の倉庫を紹介します。多くの人がすでに知っていて、使ったことがあるかもしれません。使ったことがない人は試してみてもいいです。
余計なことを言わないで、先にソースアドレスに行きます。
ここで簡単に使い方を紹介します。
1、gradleにライブラリを追加する依存:comple'comple.wonderkiln:cameraakit:0.3.1'
2、レイアウトファイルコード:
注意:幅の高さは0に設定してはいけません。写真を撮ってはいけません。
3、Javaコード
実現の考え方:
プレビューのSurfaceViewの幅の高さを肉眼では見えない値に設定します。例えば0.1 dpです。他はカスタムカメラの標準ステップです。
もちろん、インターネットでカスタマイズしたカメラの文章は多く行きました。これ以上古い話をすることはできません。ここでは使いやすい第三者の倉庫を紹介します。多くの人がすでに知っていて、使ったことがあるかもしれません。使ったことがない人は試してみてもいいです。
余計なことを言わないで、先にソースアドレスに行きます。
ここで簡単に使い方を紹介します。
1、gradleにライブラリを追加する依存:comple'comple.wonderkiln:cameraakit:0.3.1'
2、レイアウトファイルコード:
<LinearLayout
android:id="@+id/ll_content"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical">
<Button
android:id="@+id/btn_test"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text=" "
android:layout_gravity="center_horizontal"/>
<com.wonderkiln.camerakit.CameraView
android:id="@+id/camera"
android:layout_width="0.1dp"
android:layout_height="0.1dp"
android:adjustViewBounds="true"
camerakit:ckFacing="front" />
</LinearLayout>
camerakit:ckFacing=「front」はフロントカメラを使用しています。その他の属性は公式文書を参照してください。注意:幅の高さは0に設定してはいけません。写真を撮ってはいけません。
3、Javaコード
public class MainActivity extends BaseActivity {
@BindView(R.id.btn_test)
Button btnTest;
@BindView(R.id.camera)
CameraView cameraView;
@BindView(R.id.ll_content)
LinearLayout llContent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
initView();
}
@Override
protected void onResume() {
super.onResume();
cameraView.start();
}
@Override
protected void onPause() {
// TODO Auto-generated method stub
cameraView.stop();
super.onPause();
}
private void initView() {
//
cameraView.addCameraKitListener(new CameraKitEventListener() {
@Override
public void onEvent(CameraKitEvent cameraKitEvent) {
}
@Override
public void onError(CameraKitError cameraKitError) {
}
@Override
public void onImage(CameraKitImage cameraKitImage) {
ImageView imageView = new ImageView(MainActivity.this);
imageView.setImageBitmap(cameraKitImage.getBitmap());
llContent.addView(imageView);
}
@Override
public void onVideo(CameraKitVideo cameraKitVideo) {
}
});
}
@OnClick(R.id.btn_test)
public void onViewClicked() {
//
cameraView.captureImage();
}
}
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。