【发布时间】:2015-02-26 01:55:39
【问题描述】:
我正在尝试创建一个类似于现有 Android 消息传递应用程序使用的 Android GUI。
- EditText 和 Button 将被锚定到视图的底部。 EditText 可以放大和缩小以显示一行或多行文本。 Button 将放置在 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? -
我正在使用 C#、MvvmCross 和 Xamarin.Android。 Mvx.MvxListView 是一个 MvvmCross ListView 控件。 MvvmCross 是一个 C# MVVM 库,适用于 Android、iOS、Windows Phone 等。
标签: android android-layout xamarin