您如何在 Android 7.1 中获取 "Contacts" 应用程序 "Birthday" 字段?

How do you get the "Contacts" app "Birthday" field look in Android 7.1?

我们正在尝试让一个字段看起来像 "Contacts" 应用 "Create new contact" 屏幕上的 "Date" 字段。我们不知道这是 Spinner、Button、EditText 还是如何在不重新发明轮子的情况下获得这种行为。

我们尝试过:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
              android:layout_width="match_parent"
              android:layout_height="match_parent"
              android:orientation="vertical">

    <android.support.v7.widget.AppCompatSpinner
        android:id="@+id/le_spinner"
        style="@style/Base.Widget.AppCompat.Spinner.Underlined"
        android:layout_width="match_parent"
        android:layout_height="60dp"
        android:prompt="@string/date_prompt"
        android:spinnerMode="dialog"/>

    <android.support.design.widget.TextInputLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <android.support.design.widget.TextInputEditText
            style="@style/Base.Widget.AppCompat.Spinner.Underlined"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:inputType="none"/>

    </android.support.design.widget.TextInputLayout>

    <TextView
        style="@style/Base.Widget.AppCompat.Spinner.Underlined"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Select"/>

    <Button
        style="@style/Base.Widget.AppCompat.Spinner.Underlined"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Select"/>

</LinearLayout>

None 的结果与 "Contacts" 应用程序中的结果相同(见下文):

看起来 "Date" 字段是一个按钮,很可能是 style="@style/Base.Widget.AppCompat.Spinner.Underlined" 样式。

我们采取了以下步骤来确定:

  • 我们 运行 我们的应用程序在模拟器中;
  • 我们切换到 "Contacts" 应用;
  • 我们导航到 "Create new contact" activity(在向 "Contacts" 应用添加帐户后);
  • 我们切换到 "Android Monitor" 工具 window,select 在 window 顶部的过滤器中编辑 "com.android.contacts" 应用程序,然后单击"Layout Inspector" 按钮;
  • 系统提示我们 select a window/activity,然后我们 select 编辑了 "com.android.contacts.activities.CompactContactEditorActivity",然后 "OK";
  • 我们得到了我们正在寻找的信息,如下图所示: