<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Mvx.MvxSpinner
android:layout_width="match_parent"
android:layout_height="?android:attr/listPreferredItemHeight"
local:MvxBind="ItemsSource Shapes; SelectedItem Current" />
<!--
could be customised using
local:MvxDropDownItemTemplate="@layout/spinner_dropdownitem_shape"
local:MvxItemTemplate="@layout/spinner_item_shape"
-->
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textSize="40dp"
local:MvxBind="Text Current" />
<MC.ShapeView
android:layout_width="fill_parent"
android:layout_height="300dp"
local:MvxBind="Shape Current" />
</LinearLayout>
コメントには、MvxDropDownItemTemplate と MvxItemTemplate にレイアウトを渡すことで外観をカスタマイズできることが記載されています。両方のテンプレートにこの単純なレイアウトを使用すると仮定しましょう:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:local="http://schemas.android.com/apk/res/Project.Ui.Droid"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
local:MvxBind="Text ???????" />
</FrameLayout>
MvxSpinner は、列挙された名前 ( Circle
、Square
、Triangle
) を各項目のテキストとして表示します。ビュー モデルを変更せずに、テンプレートを使用しない場合に MvxSpinner がデフォルトで表示するのと同じものを表示するバインディングをテンプレートに作成することは可能ですか? もしそうなら、そのバインディングはどのように見えますか? それが不可能な場合、この結果を達成するための最善の方法は何ですか?