本文共 596 字,大约阅读时间需要 1 分钟。
最近在Android上创建一个简单的Fragment时出现了诡异的错误。我本来的意图可能也不是很正规,在Activity的Layout xml文件中,我放置好了一个fragment element,然后打算在Activity的onCreate()函数中利用Fragment Transaction来动态替换这个fragment。然后就报了一个exception,exception的描述是这样的:
Scroll view may have only one direct child placed within it
在我想创建的fragment里,的确是有个顶层scrollview,然而我非常确定的是我的scrollview绝对只有一个direct child。经过了非常痛苦的google检索,最后终于发现一点蛛丝马迹,貌似静态定义在layout xml文件中的fragment是不能利用Fragment Transaction来进行replace的!参考
还有这里
于是我将原来定义在layout xml文件中的fragment element去除,在Activity的onCreate()函数内,利用Fragment Transaction
的add()函数,动态添加了一个fragment,此时不再报上述错误了。fragment也成功添加到Activity中。
不专业,不专业啊。
转载地址:http://ppugf.baihongyu.com/