如何修复错误:不兼容的类型:tab1 无法转换为 Fragment?
Posted
技术标签:
【中文标题】如何修复错误:不兼容的类型:tab1 无法转换为 Fragment?【英文标题】:How can i fix error: incompatible types: tab1 cannot be converted to Fragment? 【发布时间】:2019-02-26 21:17:40 【问题描述】:TaB EC 代码
错误:
我正在尝试创建一个选项卡菜单来单击某个选项卡。该方法在不同的项目中有效,但是当我在我的 MAIN 项目中实现它时,它总是在 return tab1;
下划线。
上面写着需要:
android.support.v4.app.Fragment;
found: com.example.batyaa.firstgearautomotive_2.cars.chevrolet_equinox_2001;
但是为什么?我已经导入了 Fragment。
public class PagerAdapter_1 extends FragmentPagerAdapter
int NumberOfTabs;
public PagerAdapter_1(FragmentManager fm, int numOftabs)
super(fm);
this.NumberOfTabs = numOftabs;
@Override
public Fragment getItem(int i)
switch (i)
case 0:
tabCE tab1 = new tabCE();
return tab1;
default:
return null;
return null;
@Override
public int getCount()
return 0;
【问题讨论】:
可能问题与导入和来自getCount
的NumberOfTabs
有关
没有,即使我有它返回 NumberOfTabs;它仍然让我无法以只读方式执行重构
显示两个类导入
@D-TECK : 也是 tabCE
@D-TECK : 我们要求导入 tabCE
类
【参考方案1】:
它在tabCE
类中使用android.app.Fragment
导入。
将导入更改为:
import android.support.v4.app.Fragment
在tabCE
类中,然后在PagerAdapter
中将Fragment
导入为android.support.v4.app.Fragment
。
另外,R import
也是错误的。
tabCE
位于 ..2001
包中,但它正在使用它,因为它位于 firstgearautomotive_2
包中,这是不正确的。删除导入,它会向您显示正确的(您的班级在哪里),其中包含正确的包,然后导入它。
【讨论】:
评论不用于扩展讨论;这个对话是moved to chat。以上是关于如何修复错误:不兼容的类型:tab1 无法转换为 Fragment?的主要内容,如果未能解决你的问题,请参考以下文章
错误:(54,91)错误:不兼容的类型:int无法转换为String
错误:不兼容的类型:char 无法转换为字符串 - Java [重复]
不兼容的类型:条件表达式 void 中的错误类型无法转换为布尔值。请协助
使用 Kotlin 和泛型进行数据绑定。错误:不兼容的类型:对象无法转换为列表