6

私はXamarinの初心者です。Xamarin で簡単なアプリケーションを作成しています。レイアウトにテーブル ビューがあります。テーブル ビューの各行には、モーダル ウィンドウが表示されます。たとえば、最初の行はユーザーの氏名を取得するために使用されます。指定された図に示されているモーダル ウィンドウ (右側) を表示したいと考えています。質問

以下と同じレイアウトを作成しました

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="#ffffff"
    android:minWidth="25px"
    android:minHeight="25px">
    <EditText
        android:inputType="textPersonName"
        android:layout_width="200dp"
        android:layout_height="55px"
        android:id="@+id/txtFirstName"
        android:ellipsize="none"
        android:gravity="fill_horizontal"
        android:hint="First Name"
        android:height="55dp"
        android:layout_marginTop="100dp"
        android:layout_gravity="center_horizontal"
        android:textColor="#000000" />
    <EditText
        android:inputType="textPersonName"
        android:layout_width="200dp"
        android:layout_height="55px"
        android:id="@+id/txtLastName"
        android:ellipsize="none"
        android:gravity="fill_horizontal"
        android:hint="Last Name"
        android:height="55dp"
        android:layout_marginTop="25dp"
        android:layout_gravity="center_horizontal"
        android:textColor="#000000" />
    <RelativeLayout
        android:orientation="vertical"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:background="#ffffff"
        android:minWidth="25px"
        android:minHeight="25px"
        android:layout_marginTop="25dp">
        <Button
            android:text="Save"
            android:layout_width="100dp"
            android:layout_height="55px"
            android:id="@+id/btnSave"
            android:gravity="center"
            android:layout_gravity="center_horizontal"
            android:layout_marginTop="0dp"
            android:textColor="#000"
            android:layout_marginLeft="165dp" />
    </RelativeLayout>
</LinearLayout>

そして、ポップアップを表示する私のコード

tblrName.Click += delegate
{
    //Want to display the modal window here.
};

を使用してレイアウトを設定しようとしましたsetContentView()が、モーダルウィンドウを同じ画面自体に表示したいときに新しいウィンドウが開きます。

誰でもこれを達成するのを手伝ってもらえますか?

4

1 に答える 1

16

を使用しAlertDialogます。

クリックイベントで、これを試してください:

var alert = new AlertDialog.Builder(this);
alert.SetView(LayoutInflater.Inflate(Resource.Layout.Modal, null));
alert.Create().Show();

から値を取得するには、ダイアログでAlertDialogへの参照を保持できます。次に、[保存] ボタンのクリック イベントで、単に呼び出して値を取得します。EditText EditText.Text

于 2013-10-09T18:13:38.813 に答える