Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了尝试在空对象引用上调用虚方法’void android.support.v7.app.ActionBar.setDisplayHomeAsUpEnabled(boolean)’大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正面临这个错误.我花了很多时间,但唉!我陷入了这个错误.我想在我的应用程序中添加Action Bar,但它在getSupportActionBar()上不断向我显示错误,请任何人指导我.

FATAL EXCEPTION: main
Process: com.technerdshub.vusocial,PID: 20633
java.lang.RuntimeException: Unable to start activity ComponenTinfo{Com.technerdshub.vusocial/com.technerdshub.vusocial.Activities.studentDashboardActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.app.ActionBar.setDisplayHomeAsUpEnabled(Boolean)' on a null object reference
  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2693)
  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2758)
  at android.app.ActivityThread.access$900(ActivityThread.java:177)
  at android.app.ActivityThread$H.handlemessage(ActivityThread.java:1448)
  at android.os.Handler.dispatchmessage(Handler.java:102)
  at android.os.Looper.loop(Looper.java:145)
  at android.app.ActivityThread.main(ActivityThread.java:5942)
  at java.lang.reflect.Method.invoke(Native Method)
  at java.lang.reflect.Method.invoke(Method.java:372)
  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1389)
  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1184)
 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.app.ActionBar.setDisplayHomeAsUpEnabled(Boolean)' on a null object reference
  at com.technerdshub.vusocial.Activities.studentDashboardActivity.onCreate(studentDashboardActivity.java:50)
   

我的java文件是:

package com.technerdshub.vusocial.Activities;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.bundle;
import android.support.design.widget.TabLayout;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.widget.Toolbar;
import android.support.v7.app.AppCompatActivity;

import com.google.android.gms.appindexing.Action;
import com.google.android.gms.appindexing.AppIndex;
import com.google.android.gms.common.api.GoogleApiClient;
import com.technerdshub.vusocial.Fragments.TaskFragment;
import com.technerdshub.vusocial.Fragments.dummy.DummyContent;
import com.technerdshub.vusocial.R;

import java.util.ArrayList;
import java.util.List;

public class studentDashboardActivity extends AppCompatActivity {

    //private Toolbar toolbar;
    private TabLayout tabLayout;
    private ViewPager viewPager;
    /**
     * ATTENTION: This was auto-generated to implement the App Indexing API.
     * See https://g.co/AppIndexing/Androidstudio for more information.
     */
    private GoogleApiClient client;

    @Override
    protected void onCreate(Bundle savedInstanceStatE) {

        displayLoginActivity();

        super.onCreate(savedInstanceStatE);
        setContentView(R.layout.activity_student_dashboard);

//        Parse.initialize(new Parse.Configuration.builder(this)
//                        .applicationId("J5CIV2z6xeSCXDqdOfhE0kPSikvRFPyDyOJxqJNx")
//                        .clientKey("bEWm4nWtWiBrMczGfOvA7s4Ulr2bAU3W3TtVSLDf")
//                        .build()
//        );

        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setElevation(2);


        viewPager = (ViewPager) findViewById(R.id.viewpager);
        setupViewPager(viewPager);

        tabLayout = (TabLayout) findViewById(R.id.tabs);
        tabLayout.setupWithViewPager(viewPager);

//        ParSEObject testObject = new ParSEObject("Task");
//        testObject.put("marks",99);
//        testObject.saveInBACkground();

        // ATTENTION: This was auto-generated to implement the App Indexing API.
        // See https://g.co/AppIndexing/Androidstudio for more information.
        client = new GoogleApiClient.builder(this).addApi(AppIndex.API).build();
    }

    private void setupViewPager(ViewPager viewPager) {
        ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
        adapter.addFragment(new TaskFragment(),"Quiz");
        adapter.addFragment(new TaskFragment(),"Assignment");
        adapter.addFragment(new TaskFragment(),"GDP");
        viewPager.setAdapter(adapter);
    }



    private void displayLoginActivity() {

        Intent i = new Intent(this,Login.class);
        startActivity(i);

    }

    @Override
    public void onStart() {
        super.onStart();

        // ATTENTION: This was auto-generated to implement the App Indexing API.
        // See https://g.co/AppIndexing/Androidstudio for more information.
        client.connect();
        Action viewAction = Action.newAction(
                Action.TYPE_VIEW,// TODO: choose an action type.
                "studentDashboard Page",// TODO: Define a title for the content shown.
                // TODO: If you have web page content that matches this app activity's content,// make sure this auto-generated web page URL is correct.
                // Otherwise,set the URL to null.
                Uri.parse("http://host/path"),// TODO: Make sure this auto-generated app URL is correct.
                Uri.parse("android-app://com.technerdshub.vusocial.Activities/http/host/path")
        );
        AppIndex.AppIndexApi.start(client,viewAction);
    }

    @Override
    public void onStop() {
        super.onStop();

        // ATTENTION: This was auto-generated to implement the App Indexing API.
        // See https://g.co/AppIndexing/Androidstudio for more information.
        Action viewAction = Action.newAction(
                Action.TYPE_VIEW,// TODO: Make sure this auto-generated app URL is correct.
                Uri.parse("android-app://com.technerdshub.vusocial.Activities/http/host/path")
        );
        AppIndex.AppIndexApi.end(client,viewAction);
        client.disconnect();
    }

    class ViewPagerAdapter extends FragmentPagerAdapter {
        private final List<TaskFragment> mFragmentList = new ArrayList<>();
        private final List<String> mFragmenttitleList = new ArrayList<>();

        public ViewPagerAdapter(FragmentManager manager) {
            super(manager);
        }

        @Override
        public TaskFragment getItem(int position) {
            return mFragmentList.get(position);
        }

        @Override
        public int getCount() {
            return mFragmentList.size();
        }

        public void addFragment(TaskFragment fragment,String titlE) {
            mFragmentList.add(fragment);
            mFragmenttitleList.add(titlE);
        }

        @Override
        public CharSequence getPagetitle(int position) {
            return mFragmenttitleList.get(position);
        }


    }

}
@H_801_15@解决方法
您应该在使用getSupportActionBar()之前设置ActionBar.

为此,请在布局中添加工具栏,然后找到它
工具栏t =(工具栏)findViewById(R.id.toolbar)
调用方法setSupportActionBar(t);

然后它应该工作.

大佬总结

以上是大佬教程为你收集整理的尝试在空对象引用上调用虚方法’void android.support.v7.app.ActionBar.setDisplayHomeAsUpEnabled(boolean)’全部内容,希望文章能够帮你解决尝试在空对象引用上调用虚方法’void android.support.v7.app.ActionBar.setDisplayHomeAsUpEnabled(boolean)’所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。