Android 反压工具栏

Android 反压工具栏,android,Android,我在课堂上有一个相机预览。 当我点击后退按钮时,它返回到mainClass。如果我点击相机预览按钮,它会返回到相机预览并正常工作 当我单击工具栏后退按钮时,它将返回mainClass。如果单击“摄影机预览”按钮,则会显示此错误 FATAL EXCEPTION: main 03-16 10:33:00.271 1916-1916/org.example.ricardo.tcc2 E/AndroidRuntime: Process: org.example.ricardo.tcc2, PID

我在课堂上有一个相机预览。 当我点击后退按钮时,它返回到mainClass。如果我点击相机预览按钮,它会返回到相机预览并正常工作

当我单击工具栏后退按钮时,它将返回mainClass。如果单击“摄影机预览”按钮,则会显示此错误

FATAL EXCEPTION: main
03-16 10:33:00.271 1916-1916/org.example.ricardo.tcc2 E/AndroidRuntime:     Process: org.example.ricardo.tcc2, PID: 1916
03-16 10:33:00.271 1916-1916/org.example.ricardo.tcc2 E/AndroidRuntime: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.hardware.Camera.setPreviewDisplay(android.view.SurfaceHolder)' on a null object reference
MainClass->previewClass->backPressed->MainClass->previewClass=ok

MainClass->previewClass->toolbarBack->MainClass->previewClass=错误

Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
    setSupportActionBar(toolbar);
    getSupportActionBar().setDisplayHomeAsUpEnabled(true);

    if (getSupportActionBar() != null){
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
       // getSupportActionBar().setDisplayShowHomeEnabled(true);
        toolbar.setNavigationOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                onBackPressed();
            }
        });
    }

试试下面的方法。这将使完成当前活动并返回到工具栏上的上一个活动“后退”按钮按下

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setHomeButtonEnabled(true);
        .......................
   }

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                this.finish();
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }

试试下面的方法。这将使完成当前活动并返回到工具栏上的上一个活动“后退”按钮按下

@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_first);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setHomeButtonEnabled(true);
        .......................
   }

@Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                this.finish();
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }