像IOS一样的Android年度日历

时间:2016-08-23 08:10:51

标签: android ios iphone calendar android-calendar

我想在 throw new HttpException(400, "No data was found"); 中创建年度Android日历

比如这张照片。 年,月,日。

我使用2个listviews和1个gridview来做,但是,我在年份项之间有滞后。

50年。带文字12个月。

enter image description here

2 个答案:

答案 0 :(得分:0)

https://github.com/wasabeef/awesome-android-ui/blob/master/pages/Calendar.md

这些库可能会帮助您实现您想要的功能。您可以根据需要尝试更改其中的一些库。

答案 1 :(得分:0)

参见此示例..

https://github.com/ik024/CalendarLibrary

对于YearView(显示两列,请检查此代码如何设置两列而不是满足您的要求)

enter image description here

在xml文件中添加以下内容:

 <com.github.ik024.calendar_lib.YearView 
    android:id="@+id/calendar_year_view"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerInParent="true"/>

在您的活动中实施YearViewClickListener:

public class MonthViewDemo extends AppCompatActivity implements YearViewClickListeners{


@Override
public void dateClicked(int year, int month, int day) {
    Toast.makeText(this, "year: "+year+";\nmonth: "+month+";\nday: "+day, Toast.LENGTH_LONG).show();
    //TODO: Perform your actions based on year or month or day clicked
  }


}

有关更多信息,请参阅YearViewDemo.java文件。

定制

可以自定义以下属性:

<attr name="currentDayTextColorYV" format="color"/>
<attr name="monthNameTextColorYV" format="color"/>
<attr name="daysOfMonthTextColorYV" format="color"/>
<attr name="daysOfWeekTextColorYV" format="color"/>
<attr name="eventDayBackgroundColorYV" format="color"/>
<attr name="eventDayTextColorYV" format="color"/>
<attr name="calendarBackgroundColorYV" format="color" />
<attr name="monthNameBackgroundColorYV" format="color" />
<attr name="displayYearTextColorYV" format="color" />
<attr name="headerBackgroundColorYV" format="color" />
<attr name="prevButtonBackgroundResourceYV" format="reference" />
<attr name="nextButtonBackgroundResourceYV" format="reference" />

对于三列,您需要更改

转到calendarlib / layout / yearView.xml

这样做......并根据你的反应或其他方式做出所有改变。

    <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="horizontal"
            android:weightSum="1">

            <com.github.ik024.calendar_lib.custom.MonthView
                android:id="@+id/mv_year_view_jan"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.33" />

            <com.github.ik024.calendar_lib.custom.MonthView
                android:id="@+id/mv_year_view_feb"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.33" />

            <com.github.ik024.calendar_lib.custom.MonthView
                android:id="@+id/mv_year_view_march"
                android:layout_width="0dp"
                android:layout_height="wrap_content"
                android:layout_weight="0.33" />
        </LinearLayout>

或其他所有三个