当前位置:首页 > 技术心得 > 正文内容

Android error:Duplicate ID, tag null, or parent id with another fragment(fragment嵌套问题)

xjtudll11年前 (2015-10-11)技术心得10530

参考资料:http://stackoverflow.com/questions/14083950/duplicate-id-tag-null-or-parent-id-with-another-fragment-for-com-google-androi


跟参考资料里的这个人一样,我也碰到了这个问题,原因也与其类似。
我有个Activity,里面有个fragment,而这个fragment对应的xml文件里,又加载了其他fragment。
这是xml的代码:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >

<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:weightSum="1">

<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/button_find"
android:layout_gravity="center_horizontal"
android:background="@drawable/find_button_selector"
android:layout_marginBottom="15dip"
android:clickable="true"
android:focusable="true"
android:focusableInTouchMode="true"
android:layout_marginTop="10dip" />

<fragment
android:layout_width="wrap_content"
android:layout_height="0dp"
android:name="com.xonix.notifyWatch.ui.FragmentAlertSetting"
android:id="@+id/fragment_alert"
android:layout_weight="1"
tools:layout="@layout/setting" />

</LinearLayout>
</LinearLayout>

很明显,是属于fragment嵌套。
使用参考资料的方法,先判断view是否存在,不存在则加载xml。
private static View view;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
if (view != null) {
ViewGroup parent = (ViewGroup) view.getParent();
if (parent != null)
parent.removeView(view);
}
try {
view = inflater.inflate(R.layout.find, container, false);
} catch (InflateException e) {
       }
return view;
}
 


扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://xjtudll.cn/Exp/368/

标签: Android
分享给朋友:

“Android error:Duplicate ID, tag null, or parent id with another fragment(fragment嵌套问题)” 的相关文章

如何使用Dell PowerEdge RAID控制器(PERC)初始化和创建虚拟磁盘/阵列

如何使用Dell PowerEdge RAID控制器(PERC)初始化和创建虚拟磁盘/阵列

本文介绍了使用PowerEdge RAID控制器(PERC)的Dell Bios实用程序创建和初始化虚拟阵列或虚拟磁盘(VD)的步骤。 注意:下面的说明适用于以下PowerEdge RAID控制器(PERC):5(i+e)、6(i+e)、H700、H800、H310、H710、H810、 H330、...

VS2010:资源视图里看不到资源,提示在另一个编辑器中打开

VS2010:资源视图里看不到资源,提示在另一个编辑器中打开

问题: VS2010 MFC对话框编程 资源视图里面的内容看不到了,提示“在另一个编辑器中打开” 原因: 一般这种情况是打开了头文件中的resource.h造成的, 解决办法: 关闭resource.h,在资源视图中重新打开即可。 (双击.rc再双击)...

Word表格显示/隐藏虚框

Word表格显示/隐藏虚框

Word里,可以将表格的某些行(列)的边框线设置为“无”,但是在编辑界面,还是可以看到边框线的,只是颜色显示为灰色。如果想让那些设置为“无”了的边框线确实不显示,点击“隐藏虚框”就可以了。 这个操作说起来简单,但是得找到在菜单在...

Win7在此处打开命令窗口

Win7在此处打开命令窗口

有时候会用到命令行 但是每次都要cd,太麻烦 后来发现居然可以用shift+右键,就会弹出来“在此处打开命令窗口”。...

可变电容器的基础知识与应用

可变电容器的基础知识与应用

一. 概述 可变电容器,简称"可变电容、可调电容"(英文:Variable / adjustable Capacitor),是一种电容量可以在一定范围内连续调节、可变的电容器。 其原理,一般是通过改变极片间相对的有效面积或片间距离,它的电容量就相应地变化。可变电容,一般在无线电(...

金蝶K3 WISE 快速登录

修改快捷方式 "C:\Program Files (x86)\Kingdee\K3ERP\k3main.exe" -LoginUser|账套号|账套密码|用户账号|用户密码...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。