簡體   English   中英

Android從非活動類問題調用cameraApp

[英]Android call cameraApp from non-activity class issue

雖然我找到了幾個類似的回答問題,但我無法解決我的問題:

我使用Fragment oFragment從我想要將Camera稱為新Activity。 因此我創建了一個非活動類Camera。 運行時我收到錯誤:

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

oFragment放置在MainActivity中的FrameLayout中。 我還嘗試了Camera with Context context的構造函數。 你看到任何變通方法或錯誤嗎? 提前致謝!

編輯:如果直接在oFragment實現,代碼可以正常工作。

班級相機:

public class Camera {
    static final int REQUEST_IMAGE_CAPTURE = 1;
    Activity activity;

    public Camera(Activity activity) {
        this.activity = activity;
    }

    public void dispatchTakePictureIntent() {
        Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
        if (takePictureIntent.resolveActivity(activity.getPackageManager()) != null) {
            activity.startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
    }
}

從oFragment剪掉:

public class OFragment extends Fragment {

    Camera cam = new Camera(getActivity());
    ...
    @Override
    public void onClick(View v) {
    cam.dispatchTakePictureIntent();
    }

我剛剛解決了 我不得不添加行super(); 我的建設者,它工作正常!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM