2014-10-04 55 views
0

我有一个导航抽屉和ViewPager,其中人们可以从抽屉中的列表中选择一个对象。点击/触摸时,我想将该图像添加到ViewPager中的活动幻灯片中。在viewpager中的一个幻灯片中添加imageview,如何将图像附加到右视图组

我已经做了一个方法addObjectToSlide()这样做,但图像被附加到错误的视图。当我从一个页面滑动到另一个页面时,图像卡在顶部。另外,当我打开抽屉时,图像就结束了。

这里是我的代码:

private void addObjectToSlide(int pageNumber, int position) { 
    ViewGroup rootView = (ViewGroup) findViewById(R.id.scroll_view_slides).getRootView(); 
    RelativeLayout.LayoutParams imParams = 
      new RelativeLayout.LayoutParams(RelativeLayout.LayoutParams.WRAP_CONTENT, RelativeLayout.LayoutParams.WRAP_CONTENT); 
    imParams.addRule(RelativeLayout.CENTER_IN_PARENT, RelativeLayout.TRUE); 
    ImageView iv = new ImageView(rootView.getContext()); 

    switch (pageNumber) { 
     case 0 : 
      iv.setImageDrawable(getResources().obtainTypedArray(R.array.p1_object).getDrawable(position)); 
      break; 
     default: 
      // add later 
    } 
    rootView.addView(iv, imParams); 
} 

scroll_view_slidesRelativeLayout ID为fragment_screen_slide_page.xml

回答

0

我找到了解决办法,我改变了下面的句子:

ViewGroup rootView = (ViewGroup) mViewPager.findViewWithTag(pageNumber); 

阅读本question and solutions后。