当viewpager处于活动状态时,微调器值不可见

时间:2015-02-02 13:44:19

标签: android android-fragments android-viewpager spinner

我已经设置了一个包含2个fragements的viewpager。在第一个片段上,有一个微调器,它通过一个ArrayAdapter启动,以设置微调器的值。

当我在没有设置viewpager的情况下运行应用程序时,微调器会显示ArrayAdapter中的值,但是当我使用viewpager的代码完成代码时,微调器保持为空。

    @Override
    protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);

    List<Fragment> fragments = new Vector<Fragment>();
    fragments.add(Fragment.instantiate(this, InputFragment.class.getName()));
    fragments.add(Fragment.instantiate(this, ItemFragment.class.getName()));

    .....
      strArrayList  is filled here
    .....

    setContentView(R.layout.fragment_input);
    spinnerList = (Spinner) findViewById(R.id.spinnerList);

    dataAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, strArrayList);
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

    spinnerList.setAdapter(dataAdapter);

    setContentView(R.layout.activity_main);

    mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager(), fragments);

    // Set up the ViewPager with the sections adapter.
    mViewPager = (ViewPager) findViewById(R.id.pager);
    mViewPager.setAdapter(mSectionsPagerAdapter);

    mViewPager.setCurrentItem(0);

}

这可能是造成这种伤害的原因。

1 个答案:

答案 0 :(得分:0)

 spinnerSub.post(new Runnable() {
            @Override
            public void run() {
                Log.d("haisp","setsubspinner11");
                spinnerSub.setSelection(savedSubPostion);
                Toast.makeText(getActivity().getApplicationContext(),"setpost",Toast.LENGTH_SHORT).show();

            }
        });