Я работаю над базовым звуковым представлением для приложения для Android (xamarin.android), я хочу добиться следующего результата:
Но вместо этого я получаю этот ужасный результат (игнорируйте другие аномалии, сосредоточьтесь на макете):
Нижний relativeLayout (тот, который удерживает кнопки), кажется, не получает больше места, чем действительно нужно, когда я установил верхний RelativeLayout (держатель изображения) на match_parent, нижний RelativeLayout полностью исчез, даже если его максимум установлен на wrap_content.
Вот макет моего представления, что я делаю не так?
<?xml version = "1.0" encoding = "utf-8"?>
<RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android"
xmlns:tools = "http://schemas.android.com/tools"
xmlns:local = "http://schemas.android.com/apk/res-auto"
android:fitsSystemWindows = "true"
android:id = "@+id/top_parent"
android:layout_width = "match_parent"
android:layout_height = "match_parent">
<include
layout = "@layout/Toolbar"
android:id = "@+id/toolbar_content" />
<RelativeLayout
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:background = "@color/white"
android:layout_below = "@id/toolbar_content"
android:id = "@+id/gridLayout1">
<RelativeLayout
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:background = "@color/black"
android:id = "@+id/cover_layout"
android:layout_marginBottom = "0.0dp">
<ImageView
android:layout_width = "500dp"
android:layout_height = "400dp"
android:id = "@+id/imageview_cover"
android:background = "@color/gray"
android:layout_centerHorizontal = "true"
android:layout_centerInParent = "true"
android:layout_centerVertical = "true" />
<LinearLayout
android:orientation = "vertical"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:id = "@+id/linearLayout1"
android:layout_alignParentRight = "true"
android:layout_alignParentLeft = "true"
android:layout_alignParentTop = "true">
<TextView
android:id = "@+id/textview_title"
android:gravity = "left"
android:textColor = "@color/white"
android:textStyle = "bold"
android:text = "Audio Book Title"
android:textSize = "@dimen/text_very_huge"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:singleLine = "true" />
<TextView
android:id = "@+id/textview_author"
android:gravity = "left"
android:textColor = "@color/colorAccent"
android:text = "Author"
android:textSize = "@dimen/text_small"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:singleLine = "true" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:layout_below = "@id/cover_layout"
android:id = "@+id/relativeLayout2"
android:layout_alignParentBottom = "true"
android:layout_alignParentRight = "true"
android:layout_alignParentLeft = "true"
android:paddingBottom = "8dp"
android:paddingTop = "8dp"
android:background = "@color/white"
android:layout_marginTop = "0.0dp">
<RelativeLayout
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:id = "@+id/relativeLayout3"
android:layout_alignParentRight = "true"
android:layout_alignParentLeft = "true"
android:layout_marginTop = "@dimen/element_margin_tiny"
android:layout_marginBottom = "@dimen/element_margin_tiny">
<TextView
android:text = "Position"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:id = "@+id/textview_position"
android:gravity = "center"
android:layout_marginLeft = "@dimen/element_margin_large"
android:textColor = "@color/black"
android:layout_centerVertical = "true" />
<SeekBar
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:layout_toRightOf = "@+id/textview_position"
android:id = "@+id/player_seekbar"
android:layout_toLeftOf = "@+id/textview_duration"
android:clickable = "true"
style = "@style/GreenSeekBar"
android:layout_centerVertical = "true" />
<TextView
android:text = "Duration"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:id = "@+id/textview_duration"
android:layout_alignParentRight = "true"
android:layout_alignBottom = "@+id/seekBar1"
android:layout_alignTop = "@+id/seekBar1"
android:gravity = "center"
android:layout_marginRight = "@dimen/element_margin_large"
android:textColor = "@color/black"
android:layout_centerVertical = "true" />
</RelativeLayout>
<LinearLayout
android:layout_width = "match_parent"
android:id = "@+id/relativeLayout5"
android:layout_below = "@id/relativeLayout3"
android:layout_height = "wrap_content"
android:layout_alignParentBottom = "true">
<ToggleButton
android:src = "@drawable/toggle_sound"
android:id = "@+id/btnSound"
android:layout_width = "30dp"
android:layout_height = "30dp"
android:textOff = " "
android:textOn = " "
android:layout_weight = "2"
android:scaleType = "center"
android:paddingLeft = "@dimen/element_margin_tiny" />
<ImageButton
android:layout_width = "40dp"
android:layout_height = "40dp"
android:id = "@+id/btnPrevious"
android:background = "@null"
android:src = "@drawable/button_previous"
android:scaleType = "center"
android:layout_toRightOf = "@+id/btnSound"
android:layout_weight = "2" />
<ToggleButton
android:layout_width = "50dp"
android:layout_height = "50dp"
android:id = "@+id/btnPlayPause"
android:src = "@drawable/togglebutton_playpause"
android:layout_centerVertical = "true"
android:scaleType = "center"
android:textOff = " "
android:textOn = " "
android:layout_toRightOf = "@+id/btnPrevious"
android:layout_toLeftOf = "@+id/btnNext"
android:layout_weight = "2" />
<ImageButton
android:layout_width = "40dp"
android:layout_height = "40dp"
android:id = "@+id/btnNext"
android:background = "@null"
android:src = "@drawable/button_next"
android:scaleType = "center"
android:layout_centerVertical = "true"
android:layout_toLeftOf = "@+id/btnRepeat"
android:layout_weight = "2" />
<ToggleButton
android:src = "@drawable/toggle_playlist"
android:id = "@+id/btnRepeat"
android:layout_width = "30dp"
android:layout_height = "30dp"
android:layout_centerVertical = "true"
android:textOff = " "
android:textOn = " "
android:scaleType = "center"
android:layout_weight = "2" />
</LinearLayout>
</RelativeLayout>
</RelativeLayout>
вам нужно уменьшить размер вашего imageView. А также вам нужно изменить ваш основной макет на LinearLayout. Попробуйте решение ниже, и оно сработает для вас.
<?xml version = "1.0" encoding = "utf-8"?>
<RelativeLayout xmlns:android = "http://schemas.android.com/apk/res/android"
android:id = "@+id/gridLayout1"
android:layout_width = "match_parent"
android:layout_height = "wrap_content">
<RelativeLayout
android:id = "@+id/cover_layout"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:layout_above = "@+id/relativeLayout2"
android:layout_alignParentTop = "true"
android:layout_marginBottom = "0.0dp" >
<ImageView
android:id = "@+id/imageview_cover"
android:layout_width = "250dp"
android:layout_height = "250dp"
android:layout_centerHorizontal = "true"
android:layout_centerInParent = "true"
android:layout_centerVertical = "true"
android:layout_marginBottom = "10dp"
android:layout_marginTop = "10dp"
android:background = "@color/gray" />
<LinearLayout
android:id = "@+id/linearLayout1"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:layout_alignParentLeft = "true"
android:layout_alignParentRight = "true"
android:layout_alignParentTop = "true"
android:orientation = "vertical">
<TextView
android:id = "@+id/textview_title"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:gravity = "left"
android:singleLine = "true"
android:text = "Audio Book Title"
android:textColor = "@color/white"
android:textSize = "16sp"
android:textStyle = "bold" />
<TextView
android:id = "@+id/textview_author"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:gravity = "left"
android:singleLine = "true"
android:text = "Author"
android:textColor = "@color/colorAccent"
android:textSize = "12sp" />
</LinearLayout>
</RelativeLayout>
<RelativeLayout
android:id = "@+id/relativeLayout2"
android:layout_width = "match_parent"
android:layout_height = "80dp"
android:gravity = "center"
android:layout_alignParentBottom = "true">
<RelativeLayout
android:id = "@+id/relativeLayout3"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_above = "@+id/relativeLayout5"
android:layout_alignParentLeft = "true"
android:layout_alignParentRight = "true"
android:layout_marginBottom = "@dimen/element_margin_tiny"
android:layout_marginTop = "@dimen/element_margin_tiny">
<TextView
android:id = "@+id/textview_position"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_centerVertical = "true"
android:layout_marginLeft = "@dimen/element_margin_large"
android:layout_marginLeft = "@dimen/element_margin_large"
android:gravity = "center"
android:text = "Position"
android:textColor = "@color/black" />
<SeekBar
android:id = "@+id/player_seekbar"
style = "@style/GreenSeekBar"
android:layout_width = "fill_parent"
android:layout_height = "wrap_content"
android:layout_toLeftOf = "@+id/textview_duration"
android:layout_toRightOf = "@+id/textview_position"
android:clickable = "true" />
<TextView
android:id = "@+id/textview_duration"
android:layout_width = "wrap_content"
android:layout_height = "wrap_content"
android:layout_alignParentRight = "true"
android:layout_centerVertical = "true"
android:layout_marginRight = "@dimen/element_margin_large"
android:gravity = "center"
android:text = "Duration"
android:textColor = "@color/black" />
</RelativeLayout>
<LinearLayout
android:id = "@+id/relativeLayout5"
android:layout_width = "match_parent"
android:layout_height = "wrap_content"
android:layout_alignParentBottom = "true">
<ToggleButton
android:id = "@+id/btnSound"
android:layout_width = "30dp"
android:layout_height = "30dp"
android:layout_weight = "2"
android:paddingLeft = "@dimen/element_margin_tiny"
android:scaleType = "center"
android:src = "@drawable/toggle_sound"
android:textOff = " "
android:textOn = " " />
<ImageButton
android:id = "@+id/btnPrevious"
android:layout_width = "40dp"
android:layout_height = "40dp"
android:layout_weight = "2"
android:background = "@null"
android:scaleType = "center"
android:src = "@drawable/button_previous" />
<ToggleButton
android:id = "@+id/btnPlayPause"
android:layout_width = "50dp"
android:layout_height = "50dp"
android:layout_weight = "2"
android:scaleType = "center"
android:src = "@drawable/togglebutton_playpause"
android:textOff = " "
android:textOn = " " />
<ImageButton
android:id = "@+id/btnNext"
android:layout_width = "40dp"
android:layout_height = "40dp"
android:layout_centerVertical = "true"
android:layout_toLeftOf = "@+id/btnRepeat"
android:layout_weight = "2"
android:background = "@null"
android:scaleType = "center"
android:src = "@drawable/button_next" />
<ToggleButton
android:id = "@+id/btnRepeat"
android:layout_width = "30dp"
android:layout_height = "30dp"
android:layout_centerVertical = "true"
android:layout_weight = "2"
android:scaleType = "center"
android:src = "@drawable/toggle_playlist"
android:textOff = " "
android:textOn = " " />
</LinearLayout>
</RelativeLayout>
@Joseph, без проблем ... :) Можете ли вы сказать мне, на каком разрешении / устройстве вы это тестируете.