欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

android studio新手安卓开发心得(一)

程序员文章站 2022-04-12 08:08:47
在我要使用fragmentManager时,具体是要在mainActivity中初始化我定义的某碎片,要使用fragmentManager声明一个事务, 一开始时用的val tr = fragmentManager.beginTransaction() 在要用这个tr进行replace时,tr.repalce(R.id.XFrameLayout,我定义的继承了Fragment的某碎片), 出现了报错 !!! ①Type mism......

在我要使用fragmentManager时,具体是要在mainActivity中初始化我定义的某碎片,

要使用fragmentManager声明一个事务,

    一开始时用的val tr = fragmentManager.beginTransaction()

    在要用这个tr进行replace时,tr.repalce(R.id.XFrameLayout,我定义的继承了Fragment的某碎片),

            出现了报错 !!!

              ①Type mismatch: cannot convert from XFragment to Fragment

    之后翻阅网友们的建议,将自定义的碎片继承Fragment的包从 import android.app.Fragment  变成

               android.support.v4.app.Fragment

然而在我自定义的碎片类中,发现一直在报错,这是因为系统默认使用androidx的内容,而不是support的,一山不容二虎。要用androidx取代support

    再次翻阅网友们的建议,②取消默认androidx包的,降低版本不让自动下载androidx的,将gradle.properties里的

              android.useAndroidX=true    android.enableJetifier=true  改为false的

折腾了半天,最后我干脆用androidx的东西了

    在mainActivity中直接用

              val tr = supportFragmentManager.beginTransaction()   获取事务

之后没有报错了。

 

本文地址:https://blog.csdn.net/BeiFeng0101/article/details/109375152