Android 在Activity中动态得到frament的控件

Android 在Activity中动态得到frament的控件

4个回答

qq_27665781
qq_27665781 你来骗积分的吗?
大约 4 年之前 回复

Fragment写好后,
要在哪个 Activity添加fragment如下做:

在Activity 声明 private ArrayList fmList;

初始化界面方法中写:

        fm1 = new Fragment1();
        fm2 = new Fragment2();
        fmList = new ArrayList<Fragment>();
        fmList.add(fm1);
        fmList.add(fm2);

    页面的切换要做
    private ViewPager viewPager;
    private BaseFragment currFragment;

    viewPager.setAdapter(pagerAdapter);
    // viewPager.setOnPageChangeListener(pageChangeListener);
    currFragment = (BaseFragment)pagerAdapter.getItem(0);
    showNowTab(0);
    private FragmentPagerAdapter pagerAdapter = new FragmentPagerAdapter(
            getSupportFragmentManager()) {

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

        @Override
        public Fragment getItem(int arg0) {
            return fmList.get(arg0);
        }
    };
Theresa_zxx
ProXin 回复qq_27665781: 额,那我之前想错了, 在Fragment中添加一个布局容器,并设置ID,在Activity中findbyview找到后,就可以动态添加了。
大约 4 年之前 回复
qq_27665781
qq_27665781 我要动态得到frament中的莫个控件
大约 4 年之前 回复

我的代码:
Frament:
private Four four =new Four();
private Five five =new Five();
选中哪个framnet就给framnet里面的控件赋值初始化
webView =(WebView) five.getView().findViewById(R.id.fiveWebview);
然后给webView赋值 ,但是报空指针了

rui888
兔子托尼啊 android 不是太熟悉抱歉,你的 private Four four =new Four(); private Five five =new Five(); 这个加入到你的控件当中了 吗?你是不是得有个事件来判断当前到底是获取的是Four 还是Five
大约 4 年之前 回复

4.0以上的getFragmentManager().findFragmentById(id).getView().findViewById(id)。
最后多说一句,activity获取fragment控件做法并不好

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问