Я пытаюсь создать графический интерфейс Android, аналогичный тому, который используется в приложении Android Messaging.Плагин для Android, такой как приложение для обмена сообщениями
- EditText и Button будут привязаны к нижней части представления. EditText может расти и сокращаться, чтобы показать одну или несколько строк текста. Кнопка будет помещена справа от EditText.
- MvvmCross MvxListView заполнит оставшееся пространство. MvxListView должен автоматически изменяться по вертикали, поскольку EditText сжимается и растет, или клавиатура открывается пользователем.
Я не смог придумать что-то, что работает точно так, как я хочу. Проблема с моим текущим решением - это жесткий код. Когда я помещаю две строки текста, я получаю перекрывающиеся представления. Кто-нибудь знает, как я могу заставить MvxListView расти/сокращаться, чтобы заполнить оставшееся пространство?
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Mvx.MvxListView
android:id="@+id/MessageConversationView_MessageList"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_alignParentTop="true"
android:dividerHeight="2dp"
android:divider="@null"
android:stackFromBottom="true"
android:transcriptMode="alwaysScroll"
android:layout_marginBottom="50dp"
local:MvxBind="ItemsSource Messages" />
<RelativeLayout
android:id="@+id/InnerRelativeLayout"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true">
<Button
android:text="Send"
android:id="@+id/Button"
android:layout_alignParentRight="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content" />
<EditText
android:id="@+id/EditText"
android:layout_width="fill_parent"
android:layout_toLeftOf="@id/Button"
android:layout_height="wrap_content" />
</RelativeLayout>
</RelativeLayout>
Что такое 'Mvx.MvxListView'? – Marcus
Я использую C#, MvvmCross и Xamarin.Android. Mvx.MvxListView - это элемент управления ListView MvvmCross. MvvmCross - это библиотека C# MVVM для Android, iOS, Windows Phone и т. Д. –