2

У меня есть макет, в котором кнопка выравнивается в нижней части RelativeLayout, как в код ниже:Макет Выравнивание Выпуск в Android 5.0

<?xml version="1.0" encoding="utf-8"?> 
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:orientation="vertical" android:layout_width="250dp" 
    android:background="@color/background_material_light" 
    android:layout_height="match_parent"> 

<View 
    android:layout_alignParentLeft="true" 
    android:layout_width="1dp" 
    android:layout_height="match_parent" 
    android:background="@color/strokeColor"/> 

<RelativeLayout 
    android:id="@+id/rlHeaderFilter" 
    android:layout_width="match_parent" 
    android:layout_height="@dimen/abc_action_bar_default_height_material"> 

    <View 
     android:id="@+id/separator" 
     android:layout_width="1dp" 
     android:layout_height="match_parent" 
     android:background="@color/strokeColor"/> 

    <TextView 
     android:background="@color/actionbar_background" 
     android:id="@+id/tvFilterText" 
     style="@style/textStyleHeading2" 
     android:layout_toRightOf="@+id/separator" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     android:layout_centerHorizontal="true" 
     android:gravity="center" 
     android:textColor="@color/white" 
     android:text="Filter Search" /> 

    <ImageView 
     android:layout_width="40dp" 
     android:layout_height="40dp" 
     android:layout_alignParentRight="true" 
     android:src="@drawable/refresh" 
     android:id="@+id/resetLeadsFilter" 
     android:contentDescription="@string/emptyString" 
     android:layout_centerVertical="true" 
     android:padding="6dp"/> 

</RelativeLayout> 

<TextView 
    android:layout_below="@+id/rlHeaderFilter" 
    android:layout_marginTop="10dp" 
    android:id="@+id/tvBudgetFromFilter" 
    style="@style/textSpinnerStyleHeading" 
    android:layout_margin="8dp" 
    android:hint="Budget From" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

<TextView 
    android:layout_below="@+id/tvBudgetFromFilter" 
    android:layout_marginTop="10dp" 
    android:id="@+id/tvBudgetToFilter" 
    style="@style/textSpinnerStyleHeading" 
    android:layout_margin="8dp" 
    android:hint="Budget To" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

<include 
    android:layout_marginTop="20dp" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_margin="8dp" 
    android:layout_below="@+id/tvBudgetToFilter" 
    android:id="@+id/sourceLayout" 
    layout="@layout/source_layout" /> 

<include 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:id="@+id/statusLayout" 
    android:layout_margin="8dp" 
    android:layout_below="@+id/sourceLayout" 
    layout="@layout/status_layout" /> 

<Button 
    android:layout_alignParentBottom="true" 
    android:layout_gravity="bottom" 
    android:layout_marginTop="10dp" 
    android:textColor="@color/white" 
    android:background="@color/actionbar_background" 
    android:text="SEARCH" 
    android:id="@+id/bFilterLeads" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 
</RelativeLayout> 

можно увидеть кнопку в нижней части макета, как показано в кадр .It дисплеев как это в устройствах до Lollipop (ниже < 5.0 устройств):

enter image description here

Но леденец кнопку в нижней части не появляется, как показано на следующем рисунке:

enter image description here

Я не в состоянии получить причину для этого, пожалуйста, помогите мне. Заранее спасибо .

+0

https://developer.android.com/reference/android/support/v7/widget/Toolbar.html посмотреть на 5.0 «панель инструментов» vs 'actionbar' –

+0

@RobertRowntree Привет, Роберт Я думаю, что это проблема макетов макета. Я не знаю, что я делаю неправильно здесь. – lakshay

+0

Исследуемая панель действий использовалась и хотела предупредить вас о совете, чтобы подумать о переключении на TB –

ответ

1

Я не уверен, почему макет ведет себя по-разному между Lollipop/pre-Lollipop (если нет другой части, которая не показана). Я укажу, хотя я не думаю, что layoutGravity действителен для просмотров в пределах RelativeLayout - это то, что вы использовали бы с LinearLayout. Я бы сначала удалил это свойство и посмотрел, как он работает на pre-Lollipop, а затем посмотрим, как будет исправляться макет. Может быть, layoutGravity вызывает некорректное поведение pre-Lollipop.

+0

Я сделал это, но результат такой же !!. – lakshay

2

Я решил свою проблему! Фактически, LinearLayout стоял за навигационной панелью. Чтобы исправить это, просто добавьте эту строку в операцию (после setContentView();)

getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION); 
+0

Что такое SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION? Я не могу найти его здесь. Имея такую ​​же проблему – Manish

Смежные вопросы