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

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

xjtudll9年前 (2015-10-11)技术心得5200

参考资料: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://www.xjtudll.cn/Exp/368/

标签: Android
分享给朋友:

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

C#将图片白色背景设置为透明

红色部分是关键 Image image = System.Drawing.Image.FromFile(@"C:\A.JPG"); Bitmap pbitmap = new Bitmap(image); pbitmap.MakeTransparent(Color.White);...

浅析电波表——英国MSF码

浅析电波表——英国MSF码

参考文献: http://en.wikipedia.org/wiki/Time_from_NPL http://www.npl.co.uk/science-technology/time-frequency/time/products-and-services/msf-radio-time-sig...

Xcode ios模拟器下载及安装教程

Xcode ios模拟器下载及安装教程

1 通过Xcode下载 最新版的Xcode安装后,通常只带最新ios系统的模拟器。例如,Xcode 5.01就只带了ios7.03的模拟器。通过Xcode可以下载早期版本的模拟器。 Xcode->Preferences->Downloads Downloads下的Components就...

常见ESD保护元件分类

常见ESD保护元件分类

一般而言,ESD保护元件的分类可以通过其保护策略与方向性来进行,主要包括压敏电阻[1]、聚合物和瞬态电压抑制器(TVS[2])等。 在这几种保护元件中,压敏电阻在低电压时,呈现出高电阻,其中的每个小型二极管两端的电压都相当低,同时电流也相当小;而在较高电压时,其中的独立二极管开始导通,同时压敏电阻...

CVS迁移SVN

CVS迁移SVN

1、下载 CVS2SVN http://cvs2svn.tigris.org/files/documents/1462/49543/cvs2svn-2.5.0.tar.gz 2、下载 和安装python 需要把python的安装目录加入环境变量path中. 如果安装的时候没有选择加入环境变量,...

略坑的STM8L IO外部中断

略坑的STM8L IO外部中断

问题: STM8的GPIO中断,如何判断是哪一个IO中断的? STM8只有一个总的GPIOX(ABCDE)中断,怎么判断是哪个引脚呢? 解决办法: 在设计硬件电路的时候就要注意这个问题,能分散开的就分散开。 至于有的人说的在中断中查询IO电平来判断是哪个IO,那是有缺陷的 例如,一个上升沿中断,脉...

发表评论

访客

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