我应该在哪里访问nav_head_xyz内容?

时间:2016-06-29 01:50:16

标签: android android-spinner

我使用了Android Studio的导航抽屉活动,我希望将一个动态微调器放入头部(类似Google的收件箱)。

我应该在哪里设置它?

我尝试在onCreate()中设置它,使用:

Spinner sp = (Spinner) getLayoutInflater().inflate(R.layout.nav_header_xyz,null).findViewById(R.id.MySpinner);
    String[] a = new String[]{"abc","xyz"};
    ArrayAdapter<String> aa =new ArrayAdapter<String>(this,R.layout.support_simple_spinner_dropdown_item,a);
    aa.notifyDataSetChanged();
    System.out.println(sp);
    sp.setAdapter(aa);

    navigationView.invalidate();

它会运行,但不会改变微调器的内容。

另一方面,如果我将其设置为:

Spinner sp = (Spinner)((NavigationView) findViewById(R.id.nav_view)).findViewById(R.id.MySpinner);
    String[] a = new String[]{"abc","xyz"};
    ArrayAdapter<String> aa =new ArrayAdapter<String>(this,R.layout.support_simple_spinner_dropdown_item,a);
    aa.notifyDataSetChanged();
    System.out.println(sp);
    sp.setAdapter(aa);

    navigationView.invalidate();

我在MySpinner上得到一个NullPointerException。

0 个答案:

没有答案