Android片段在渲染后消失

Android片段在渲染后消失,android,android-fragments,Android,Android Fragments,我有一个非常奇怪的问题,我正在努力解决 我有一个片段,我正在添加到动态填充文本内容的RelativeLayout(尝试了LinearLayout和FrameLayout) 如果文本内容太大,则渲染后片段将消失。我已经通过限制内容长度验证了这一点,在这些情况下这是可以的 这个问题似乎只发生在我见过的三星Galaxy S4上 S4系统中是否存在在将碎片添加到视图时限制碎片高度的缺陷 我用来添加片段的代码是: FragmentManager fragmentManager = getFragmentM

我有一个非常奇怪的问题,我正在努力解决

我有一个片段,我正在添加到动态填充文本内容的RelativeLayout(尝试了LinearLayout和FrameLayout)

如果文本内容太大,则渲染后片段将消失。我已经通过限制内容长度验证了这一点,在这些情况下这是可以的

这个问题似乎只发生在我见过的三星Galaxy S4上

S4系统中是否存在在将碎片添加到视图时限制碎片高度的缺陷

我用来添加片段的代码是:

FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
mFragment = new DisplayFragment();
fragmentTransaction = fragmentTransaction.add(R.id.patient_container, mFragment, mFragment.getClass().getName());
fragmentTransaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
fragmentTransaction.commit();
这段代码适用于我测试过的所有设备以及除Galaxy S4之外的所有模拟器实例。仅当视图高度超过设定限制(不确定这是什么)时,它才会在S4上断开

发生此问题时,我收到以下控制台警告:

电子/可视系统﹕ 视图#1 mHardwareLayer无效

在此方面的任何帮助都将不胜感激

提前谢谢

更新:添加了片段XML

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:id="@+id/rootLinearLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical"
    android:background="@android:color/white"
    android:visibility="visible">

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white"
        android:gravity="top">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's name:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="@string/placeholder_text"
            android:id="@+id/patientsNameTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            />
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's gender:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="@string/placeholder_text"
            android:id="@+id/patientsGenderTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            />
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient&apos;s DOB:"
            style="@style/bodyText"
            android:id="@+id/patientsDOBTitle"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="@string/placeholder_text"
            android:id="@+id/patientsDOBTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            />
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's telephone:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/patientsTelephoneTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        style="@style/horizontalLinearLayout"
        android:background="@android:color/white"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:gravity="top">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's postcode:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/patientsPostcodeTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's address:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/patientsAddressTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Reason for referral:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/referralReasonTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white"
        style="@style/verticalLinearLayout">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient presenting with:"
            style="@style/bodyText"
            android:layout_marginBottom="@dimen/very_small_vertical_spacing"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/additionalInfoTextView"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"
            android:gravity="left"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Details of allergies:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/allergiesTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Registered surgery:"
            style="@style/bodyText"
            android:id="@+id/registeredTextTitle"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/surgeryTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingBottom="@dimen/small_vertical_spacing"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@color/grey_light_expanded"
        android:paddingTop="@dimen/small_vertical_spacing"
        android:id="@+id/patientsBookingLocationHolder">

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/patientsBookingLocationTextView"
            android:gravity="left"
            style="@style/boldBlueBodyText"
            android:text="@string/placeholder_text"
            />

    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"
          android:id="@+id/patientsBookingLocationHolderHR"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@color/grey_light_expanded">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Contact number:\n(at time of booking)"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/contactNumberTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"/>

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@color/grey_light_expanded"
        android:id="@+id/patientRepHolder">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's representative:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/representativeTextView"
            android:gravity="right"
            style="@style/blueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:layout_margin="0dp"
          android:id="@+id/patientRepHolderHR"/>
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:id="@+id/ambulanceRequiredHolder"
        android:background="@color/grey_light_expanded">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Ambulance required:"
            style="@style/bodyText"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:id="@+id/ambulanceRequiredTextView"
            android:gravity="right"
            style="@style/boldBlueBodyText"
            android:text="@string/placeholder_text"/>
    </LinearLayout>
    <View style="@style/hr"
          android:id="@+id/ambulanceRequiredHolderHR"
          android:layout_margin="0dp"/>


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:id="@+id/patientsLocationHolder"
        android:background="@color/grey_light_expanded">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's location at time of booking:"
            style="@style/bodyText"/>

        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="Patient's name:"
            android:id="@+id/patientsLocationTextView"
            style="@style/blueBodyText"
            android:layout_marginTop="@dimen/small_vertical_spacing"/>
    </LinearLayout>

    <View style="@style/hr"
          android:id="@+id/patientsLocationHolderHR"
          android:layout_margin="0dp"/>


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        android:gravity="top"
        android:paddingTop="@dimen/activity_vertical_margin"
        android:paddingBottom="@dimen/activity_vertical_margin"
        android:paddingLeft="@dimen/activity_horizontal_margin"
        android:paddingRight="@dimen/activity_horizontal_margin"
        android:background="@android:color/white">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text="I confirm that:"
            style="@style/bodyText"
            android:textStyle="bold"/>
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_weight="0.5"
            android:text=""
            android:layout_marginTop="@dimen/small_vertical_spacing"
            android:gravity="left"
            style="@style/bodyText"
            android:textSize="12sp"
            android:id="@+id/confirmationText"/>
    </LinearLayout>
</LinearLayout>


Hmm,看看片段的布局会很有趣。我已经为片段添加了XML文件。你说的文本内容太大是什么意思?您的文本视图太多,或者您的文本视图填充的文本太长?它是如何消失的?片段不再在堆栈中,或者视图看起来是空的?@inmystry当我填充文本字段时,如果所有元素的累积高度达到某个大小,片段就不可见了。这就好像设备无法呈现片段一样。我已经检查了Heirarchy工具中的布局,它就在那里,包括所有元素。视图在它们应该在的地方,但它们只是看不见的。嗯。。。在黑暗中随机射击。可能尝试禁用活动的硬件加速?android:hardwareAccelerated=“false”,或者尝试设置layertype、view.setLayerType(LAYER\u TYPE\u软件,null)?