gpt4 book ai didi

java - 如何在另一个 Activity 中使用一个 Activity 中的方法?

转载 作者:行者123 更新时间:2023-11-30 05:05:49 25 4
gpt4 key购买 nike

我想在另一个 Activity 中使用我的方法 onImageFromCameraClick,但是当我尝试在另一个 Activity 中使用它时,它会导致以下错误:

java.lang.NullPointerException: Attempt to invoke virtual method 'android.content.pm.PackageManager android.content.Context.getPackageManager()' on a null object reference

如何在另一个 Activity 中使用该方法?

方法onImageFromCameraClick():

public void onImageFromCameraClick() {  
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

if (intent.resolveActivity(getPackageManager()) != null) {
File photoFile = null;
try { photoFile = createImageFile();
} catch (IOException e) {
Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG);
}

if (photoFile != null) {
Uri photoUri = FileProvider.getUriForFile(this,
getApplicationContext().getPackageName() + ".fileprovider", photoFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, photoUri);
startActivityForResult(intent, REQUEST_IMAGE_CAPTURE);
} // inner if end
} // outer if end
} // onImageFromCameraClick END

其他 Activity :

case "cameraStart":  

Handler mHandler = new Handler(Looper.getMainLooper());
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
FaceDetectionActivity fm = new FaceDetectionActivity();
fm.onImageFromCameraClick();
} }, 0);
break; }
break;
// Code end

最佳答案

如果我正确理解你的问题,你可以尝试使用包含 onImageFromCameraClick() 的主类的 Context 来初始化对主类的引用其他Activity,例如:

MainActivity main = (MainActivity) context;
main.onImageFromCameraClick();

您可以通过将 this 的实例传递到您的其他 Activity 中,从您的主类获取 context

关于java - 如何在另一个 Activity 中使用一个 Activity 中的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54622970/

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