3

私のアプリでは、XML ファイルを解析して要素をビューに追加したいのですが、これは非常にうまく機能します。しかし、より「複雑な」XML ファイルには少し問題があり、正しく表示されません。たとえば、このファイルを入力用に使用すると、最後の TextView を除いて、TextView が画面に表示されませんか?

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/general_bg"
    android:gravity="center_horizontal" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/txt_newgame_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:paddingBottom="25dip"
            android:paddingTop="10dip"
            android:text="New Game"
            android:textColor="@color/menu_title"
            android:textSize="24.5sp" />

        <TextView
            android:id="@+id/txt_newgame_profile"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:paddingBottom="20dip"
            android:paddingLeft="10dip"
            android:text="Profile: Denis"
            android:textColor="@color/menu_submenu"
            android:textSize="18sp" />

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="0.5dip"
            android:background="#999" />

        <TextView
            android:id="@+id/txt_newgame_difficulty"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:paddingBottom="5dip"
            android:paddingLeft="10dip"
            android:paddingTop="5dip"
            android:textColor="@color/menu_submenu"
            android:textSize="18sp" />

        <SeekBar
            android:id="@+id/seekb_newgame_difficulty"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dip"
            android:max="10"
            android:paddingLeft="20dip"
            android:paddingRight="20dip"
            android:progress="4" />

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="0.5dip"
            android:background="#999" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginBottom="10dip"
            android:layout_marginTop="10dip" >

            <TextView
                android:id="@+id/txt_newgame_showshadow"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:paddingLeft="10dip"
                android:text="Show shadow"
                android:textColor="@color/menu_submenu"
                android:textSize="18sp" />

            <CheckBox
                android:id="@+id/checkbox_newgame_shadow"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:paddingRight="20dip" />
        </RelativeLayout>

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="0.5dip"
            android:background="#999" />

        <RelativeLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginBottom="10dip"
            android:layout_marginTop="10dip" >

            <TextView
                android:id="@+id/txt_newgame_cooperative"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:paddingLeft="10dip"
                android:text="Cooperative"
                android:textColor="@color/menu_submenu"
                android:textSize="18sp" />

            <CheckBox
                android:id="@+id/checkbox_newgame_cooperative"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:paddingRight="20dip" />
        </RelativeLayout>

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="0.5dip"
            android:background="#999" />

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal"
            android:paddingTop="60dip" >

            <Button
                android:id="@+id/btn_newgame_start"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_vertical"
                android:paddingLeft="50dip"
                android:paddingRight="50dip"
                android:text="Start" />

            <Button
                android:id="@+id/btn_newgame_back"
                android:layout_width="wrap_content"
                android:layout_height="wrap_conte
                android:gravity="center_vertical"
                android:paddingLeft="50dip"
                android:paddingRight="50dip"
                android:text="Back" />
        </LinearLayout>
    </LinearLayout>

    <TextView
        android:id="@+id/txt_start_status"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Status: Connected"
        android:textColor="@color/green_ok"
        android:textSize="18sp" />

</RelativeLayout>

では、解析を行うときに考慮すべきことと、TextView が表示されないのはなぜですか? それらは他の要素によって遅れていますか、それとも RelativLayout に手がかりがありますか?

ヒントに感謝します!:)

4

1 に答える 1

0

android:layout_heightより大きいテキストビュー0.5dip(10dipまたは など15dip) を表示できるように設定する必要があります。
レイアウトを変更すると、すべてのテキストビューが表示されます:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/general_bg"
    android:gravity="center_horizontal" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical" >

        <TextView
            android:id="@+id/txt_newgame_title"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="center"
            android:paddingBottom="25dip"
            android:paddingTop="10dip"
            android:text="New Game"
            android:textColor="@color/menu_title"
            android:textSize="24.5sp" />

        <TextView
            android:id="@+id/txt_newgame_profile"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:paddingBottom="20dip"
            android:paddingLeft="10dip"
            android:text="Profile: Denis"
            android:textColor="@color/menu_submenu"
            android:textSize="18sp" />

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="15dip"
            android:background="#999" />

        <TextView
            android:id="@+id/txt_newgame_difficulty"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_gravity="left"
            android:paddingBottom="5dip"
            android:paddingLeft="10dip"
            android:paddingTop="5dip"
            android:textColor="@color/menu_submenu"
            android:textSize="18sp" />

        <SeekBar
            android:id="@+id/seekb_newgame_difficulty"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginBottom="10dip"
            android:max="10"
            android:paddingLeft="20dip"
            android:paddingRight="20dip"
            android:progress="4" />

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="15dip"
            android:background="#999" />

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginBottom="10dip"
            android:layout_marginTop="10dip" >

            <TextView
                android:id="@+id/txt_newgame_showshadow"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:paddingLeft="10dip"
                android:text="Show shadow"
                android:textColor="@color/menu_submenu"
                android:textSize="18sp" />

            <CheckBox
                android:id="@+id/checkbox_newgame_shadow"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:paddingRight="20dip" />
        </RelativeLayout>

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="15dip"
            android:background="#999" />

        <RelativeLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_gravity="center_vertical"
            android:layout_marginBottom="10dip"
            android:layout_marginTop="10dip" >

            <TextView
                android:id="@+id/txt_newgame_cooperative"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentLeft="true"
                android:layout_centerVertical="true"
                android:paddingLeft="10dip"
                android:text="Cooperative"
                android:textColor="@color/menu_submenu"
                android:textSize="18sp" />

            <CheckBox
                android:id="@+id/checkbox_newgame_cooperative"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_alignParentRight="true"
                android:layout_centerVertical="true"
                android:paddingRight="20dip" />
        </RelativeLayout>

        <TextView
            android:layout_width="fill_parent"
            android:layout_height="15dip"
            android:background="#999" />

        <LinearLayout
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:gravity="center"
            android:orientation="horizontal"
            android:paddingTop="60dip" >

            <Button
                android:id="@+id/btn_newgame_start"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_vertical"
                android:paddingLeft="50dip"
                android:paddingRight="50dip"
                android:text="Start" />

            <Button
                android:id="@+id/btn_newgame_back"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_vertical"
                android:paddingLeft="50dip"
                android:paddingRight="50dip"
                android:text="Back" />
        </LinearLayout>
    </LinearLayout>

    <TextView
        android:id="@+id/txt_start_status"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="Status: Connected"
        android:textColor="@color/green_ok"
        android:textSize="18sp" />

</RelativeLayout>
于 2012-08-28T16:25:14.413 に答える