vainquit
2020-04-15 11:09
采纳率: 78.4%
浏览 722

为什么子类不能调用父类的方法?

图片说明

Context context= view.getContext();
//Log显示context为MainActivity,而MainActivity继承于AppCompatActivity,后者又继承于FragmentActivity

FragmentManager fragmentManager=context.getSupportFragmentManager();
//getSupportFragmentManager是FragmentActivity的方法
//然而getSupportFragmentManager()被系统标红,即android studio认为context不存在该方法

但如果我把第一行语句改成:

AppCompatActivity context=(AppCompatActivity)view.getContext();

则下面的getSupportFragmentManager()就不会被标红。这是为什么呢?



更新:即便强制转换,也会标红:
图片说明

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 键盘舞者113 2020-04-15 11:28
    已采纳

    你这是父类调子类的方法,需要强转 FragmentManager fragmentManager= (MainActivity)context.getSupportFragmentManager();

    打赏 评论

相关推荐 更多相似问题