大佬教程收集整理的这篇文章主要介绍了Android:Merge-Tag不支持片段,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<merge xmlns:android="http://scheR_199_11845@as.android.com/apk/res/android"> <include layout="@layout/waiTing_dialog"/> <LinearLayout xmlns:android="http://scheR_199_11845@as.android.com/apk/res/android" android:id="@+id/my_layout" android:layout_width="wrap_content" android:layout_height="fill_parent" android:BACkground="@drawable/bg_tile" android:gravity="center_horizontal" android:orientation="vertical" android:visibility="invisible"> <include layout="@layout/no_entries"/> </LinearLayout> </merge>
并在片段’onCreateView中使用它,如下所示:
@Override public View onCreateView(LayoutInflater inflater,ViewGroup container,final Bundle savedInstanceStatE) { View view = inflater.inflate(R.layout.main,container,falsE); return view; }
始终存在以下错误:
07-11 09:53:47.608: E/AndroidRuntime(5602): android.view.InflateException: \ <merge /> can be used only with a valid ViewGroup root and attachToRoot=true
怎么处理这个问题?
我所做的就是完全放弃“根布局”(参见battery_details.xml).所以我为MonitOractivity创建了一个片段布局:
public class MonitOractivity extends FragmentActivity { @Override protected void onCreate(Bundle savedInstanceStatE) { super.onCreate(savedInstanceStatE); setContentView(R.layout.activity_monitor); } }
布局在哪里:
<!-- activity_monitor.xml --> <LinearLayout xmlns:android="http://scheR_199_11845@as.android.com/apk/res/android" xmlns:tools="http://scheR_199_11845@as.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:baselineAligned="false" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MonitOractivity" > <fragment android:name="di.k23b.hw3.fragments.MonitorDetailsFragment" android:id="@+id/monitor_details" android:layout_weight="1" android:layout_width="0dp" android:layout_height="match_parent" /> <fragment android:name="di.k23b.hw3.fragments.MonitorPrefsFragment" android:id="@+id/monitor_preferences" android:layout_weight="2" android:layout_width="0dp" android:layout_height="match_parent" /> </LinearLayout>
并在MonitorDetailsFragment类中:
public class MonitorDetailsFragment extends Fragment { @Override public View onCreateView(LayoutInflater inflater,Bundle savedInstanceStatE) { return inflater.inflate(R.layout.battery_details,falsE); // NEVER TRUE ! } }
其中battery_details.xml(在res / layout中创建):
<?xml version="1.0" encoding="utf-8"?> <TextView xmlns:android="http://scheR_199_11845@as.android.com/apk/res/android" android:id="@+id/batteryTextHealth" android:layout_width="120dp" android:layout_height="wrap_content" android:ems="10" android:text="BATTERRRYYY" android:textIsSELEctable="true" > </TextView>
作品.因此,您可以编辑使用片段的布局,添加< LinearLayout>那里只是放了< LinearLayout>的元素.直接进入你在OnCreateView中使用的布局 – 删除合并标签
以上是大佬教程为你收集整理的Android:Merge-Tag不支持片段全部内容,希望文章能够帮你解决Android:Merge-Tag不支持片段所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。