spinner.setAdapter(适配器)上的 NullPointerException

NullPointerException on spinner.setAdapter(adapter)

我是编程新手,所以请原谅我有这个简单的问题。 我的问题是我在尝试 运行 这段代码时遇到 NullPointerException,因为我无法在微调器上调用 setAdapter 方法。(微调器似乎为空,所以这就是原因:c) 我很感激解决这个问题的每一个建议:)

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

        Toolbar toolbar=findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        drawer=findViewById(R.id.draw_layout);
        NavigationView navigationView=findViewById(R.id.nav_view);
        navigationView.setNavigationItemSelectedListener(this);

        ActionBarDrawerToggle toggle= new ActionBarDrawerToggle(this, drawer, toolbar,R.string.navigation_drawer_open,R.string.navigation_drawer_close);

        drawer.addDrawerListener(toggle);
        toggle.syncState();
        if (savedInstanceState==null){
        getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,new TrackingPlanFragment()).commit();
        navigationView.setCheckedItem(R.id.nav_home);}

        textInputExercise=findViewById(R.id.text_input_exercise);
        textInputWeight=findViewById(R.id.text_input_weight);
        textInputSets=findViewById(R.id.text_input_sets);
        textInputReps=findViewById(R.id.text_input_reps);

        Spinner spinner=(Spinner) findViewById(R.id.spinner1);
        ArrayAdapter<CharSequence> adapter=ArrayAdapter.createFromResource(this,R.array.numbers,android.R.layout.simple_spinner_item);
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        spinner.setAdapter(adapter);
    }
 Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'void android.widget.Spinner.setAdapter(android.widget.SpinnerAdapter)' on a null object reference
        at com.example.fitenss_tracking_app.MainActivity.onCreate(MainActivity.java:61)

好的,我终于找到问题了。 问题是,我没有将微调器放在 activity_main.xml 文件中,而是放在可以在此 activity 中调用的片段的 xml 文件中。 现在我已经改变了代码工作得很好。