【问题标题】:Android: Extending and casting Fragment issueAndroid:扩展和转换片段问题
【发布时间】:2014-09-15 16:17:08
【问题描述】:

我正在尝试创建一个 ViewPager,其中包含此 tutorial 之后的几个片段。问题是Eclipse说下面的语句有错误:

Fragment f = new MyFragment();

但是 MyFragment 扩展了 Fragment 类,所以出现这样的错误有点奇怪。以下是MyAdapterMyFragment 类的代码:

package com.example.myapp;

import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

    public class MyFragment extends Fragment  {
        public View onCreateView(LayoutInflater li , ViewGroup vg , Bundle b) {
            return li.inflate(R.layout.fragment_layout, vg , false);            
        }       
        public MyFragment() {           
        }
    }

    class MyAdapter extends FragmentPagerAdapter {  
        public MyAdapter(FragmentManager fm) {
            super(fm);
            // TODO Auto-generated constructor stub
        }
        @Override
        public Fragment getItem(int arg0) {
            Fragment f = new MyFragment();
            return f;
        }
        @Override
        public int getCount() {
            // TODO Auto-generated method stub
            return 0;
        }       
    }

【问题讨论】:

  • 你得到什么错误?和Fragment是同一类型吗? (片段与支持片段)
  • 这是一个片段/支持片段问题。我已经完全忘记了。谢谢

标签: android fragment pager


【解决方案1】:

尝试更改导入:

import android.app.Fragment

收件人:

import android.support.v4.app.Fragment

【讨论】:

    【解决方案2】:
    @Override
    public Fragment getItem(int arg0) {
        Fragment f = new MyFragment();
        return f;
    }
    

    改成

    @Override
    public Fragment getItem(int arg0) {
        MyFragment f = new MyFragment();
        return f;
    }
    

    【讨论】:

      【解决方案3】:

      如果您使用的是 viewpager,您还需要使用支持 v4 包中的 Fragment。 所以你需要确保 MyFragment 扩展了正确的 Fragment。正如 nem 所说,您需要更改导入语句

      import android.support.v4.app.Fragment
      

      【讨论】:

        猜你喜欢
        • 2022-08-21
        • 1970-01-01
        • 2015-09-20
        • 2021-03-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多