gpt4 book ai didi

Java Android 相机

转载 作者:行者123 更新时间:2023-12-01 12:34:01 29 4
gpt4 key购买 nike

我有这个简单的相机 Intent 应用程序,但我想知道如何向其添加滤镜。我是 Java 初学者,我按照指南使相机工作。任何人都可以帮助我了解如何使用按钮 onClick Activity 添加过滤器吗?

public class MainActivity extends Activity {


private static String logtag = "CameraApp";

private static int TAKE_PICTURE = 1;

private Uri imageUri;

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);


Button cameraButton = (Button)findViewById(R.id.button_camera);

cameraButton.setOnClickListener(cameraListener);
}


private OnClickListener cameraListener = new OnClickListener() {
public void onClick(View v) {

takePhoto(v);
}
};

public void takePhoto(View v) {

Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");

File photo = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES), "pic.jpg");

intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(photo));

imageUri = Uri.fromFile(photo);

startActivityForResult(intent, TAKE_PICTURE);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {

getMenuInflater().inflate(R.menu.main, menu);
return true;
}


@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);
switch(requestCode) {

if(resultCode == Activity.RESULT_OK) {

Uri selectedImage = imageUri;

getContentResolver().notifyChange(selectedImage, null);

ImageView imageView = (ImageView)findViewById(R.id.image_view_camera);

ContentResolver cr = getContentResolver();

Bitmap bitmap;
try {

bitmap = android.provider.MediaStore.Images.Media.getBitmap(cr, selectedImage);

imageView.setImageBitmap(bitmap);

Toast.makeText(MainActivity.this, selectedImage.toString(), Toast.LENGTH_LONG).show();
} catch(Exception e) {

Toast.makeText(MainActivity.this, "failed to load", Toast.LENGTH_LONG).show();
Log.e(logtag, e.toString());
}
}
}
}

}

最佳答案

你实现这样的效果:

Camera.Parameters parameters = camera.getParameters();
parameters.setColorEffect(Camera.Parameters.EFFECT_AQUA);
camera.setParameters(parameters);

文档:

http://developer.android.com/reference/android/hardware/Camera.Parameters.html#EFFECT_AQUA

Update:

Button filterbutton;
Button filterbutton = (Button)findViewById(R.id.filterbutton); }

filterbutton.setOnClickListener(new View.OnClickListener() {


public void onClick(View v) {

v.setColorEffect(Camera.Parameters.EFFECT_AQUA);
}

关于Java Android 相机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25710543/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com