2016-07-26 4 views
0

Когда DatePicker отображается с видом календаря, возможно ли иметь дополнительную метку с некоторым текстом в нижней части этого вида календаря (как показано на рисунке)? Я пробовал посмотреть, есть ли возможность настроить оригинальный Android DatePicker, не вижу подходящего способа сделать это.Настройка макета для Android DatePicker

datepicker

ответ

3

Вы можете получить исходный код из here.

Чтобы настроить макет, как вы хотите, вы должны изменить layout-land/mdtp_date_picker_dialog.xml и layout-sw600dp-land/mdtp_date_picker_dialog.xml fiels. Здесь я добавил два TextViews в качестве экрана:

<?xml version="1.0" encoding="utf-8"?> 

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:background="@color/mdtp_background_color" 
    android:orientation="vertical"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="450dp" 
     android:gravity="center" 
     android:orientation="horizontal"> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:layout_gravity="center" 
      android:orientation="vertical"> 

      <include layout="@layout/mdtp_date_picker_header_view" /> 

      <include layout="@layout/mdtp_date_picker_selected_date" /> 

      <include layout="@layout/mdtp_date_picker_footer_view" /> 

      <TextView 
       android:id="@+id/added_text" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:gravity="center" 
       android:padding="8dp" 
       android:text="Some Text" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="match_parent" 
      android:gravity="center" 
      android:orientation="vertical"> 

      <include layout="@layout/mdtp_date_picker_view_animator" /> 

      <TextView 
       android:id="@+id/added_text2" 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:text="Some text" /> 
     </LinearLayout> 

    </LinearLayout> 

    <include layout="@layout/mdtp_done_button" /> 
</LinearLayout> 

Изменения связанного с dimens, чтобы найти TextViews, как вы хотите.

+0

Все еще работаю над этим, но похоже, что это то, что мне нужно. Спасибо. – etilia

+0

Гарантируется ли это, что в будущих версиях Android не будет ломаться? Я не видел официального API от Android. – Dibzmania

0

Я столкнулся с подобной проблемой некоторое время назад. Я бы порекомендовал вам использовать библиотеку this.

Вы можете настроить эту библиотеку так, как хотите. Просто отредактируйте его файл макета и разверните конкретный макет, который вы хотите. Вы также можете легко добавлять метки в файлы макета.

Надеюсь, это поможет.

Смежные вопросы