Android XML Layout наложение - PullRequest
0 голосов
/ 22 марта 2012

Я хотел бы проконсультироваться с проблемой макета XML. У меня есть основное действие, которое является TabActivity, и оно заполняется (вкладки) другим действием, которое является ListActivity. На экране вместе с основным TabActivity я хочу показать серую полосу с кнопкой (кнопками) внизу страницы. Проблема в том, что последний элемент списка скрыт полосой. Итак, что мне нужно, так это то, что просмотр списка должен иметь границу в той же точке, где начинается граница полосы кнопок. Это демонстрирует картина здесь:

http://postimage.org/image/h8yx7jxlj/

Я уже пытался изменить параметр layout_height нескольких макетов на wrap_content, но это не помогло ...

P. S. Есть ли способ, как изменить размер шрифта заголовка вкладки в XML LAYOUT FILE?

Это мой XML-макет основной деятельности:

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

<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@android:id/tabhost"
     android:layout_width="fill_parent"
     android:layout_height="fill_parent">
<LinearLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:padding="5dp">

    <TabWidget
            android:id="@android:id/tabs"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" />


    <FrameLayout
            android:id="@android:id/tabcontent"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:padding="5dp" />


</LinearLayout>

<LinearLayout
        android:orientation="horizontal"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:gravity="center"
        android:background="#666666">

    <Button android:id="@+id/settins_button"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_marginTop="1sp"
            android:text="volba zdrojů"
            android:enabled="false" />

</LinearLayout>

Это код макета xml действия, который вставляется в tabcontrol как содержимое вкладки. (затем вставляется в FrameLayout tabcontrol):

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
          android:orientation="vertical"
          android:layout_width="fill_parent"
          android:layout_height="fill_parent">

<ListView
        android:id="@+id/android:list"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"/>


<TextView
        android:id="@+id/android:empty"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:gravity="center_vertical|center_horizontal"
        android:text="@string/main_no_items"/>

</LinearLayout>

Большое спасибо!

1 Ответ

1 голос
/ 22 марта 2012

Пожалуйста, используйте RelativeLayout вместо LinearLayout. Пожалуйста, смотрите прикрепленный код, который делает именно то, что вы хотите.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#FFFFFF" >

    <TextView
        android:id="@+id/text"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/button"
        android:layout_alignParentTop="true"
        android:gravity="center_horizontal"
        android:text="some text goes here"
        android:textColor="#1E1E1E"
        android:textSize="25sp" />

    <LinearLayout
        android:id="@+id/button"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_centerHorizontal="true"
        android:orientation="horizontal" >

        <Button
            android:id="@+id/btn_send"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_marginLeft="15dp"
            android:layout_marginRight="15dp"
            android:layout_weight="50"
            android:onClick="handleSendReport"
            android:text="@string/button_send" />
    </LinearLayout>

</RelativeLayout>
...