zoukankan      html  css  js  c++  java
  • Andorid 之日历控件,可左右滑动,包含公历,农历,节假日等

    公司项目需要日历这个功能,经过查阅资料写了个demo,包含公历,农历,节假日等,还可左右滑动。

    效果图:

    代码:

    public class MainActivity extends AppCompatActivity implements
            CalendarViewPagerFragment.OnPageChangeListener,
            CalendarViewFragment.OnDateClickListener,
            CalendarViewFragment.OnDateCancelListener {
    
        private TextView tv_date;
        private List<CalendarDate> mListDate = new ArrayList<>();
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            tv_date = (TextView) findViewById(R.id.tv_date);
            initFragment();
        }
    
        private void initFragment() {
    
            FragmentManager fm = getSupportFragmentManager();
            FragmentTransaction tx = fm.beginTransaction();
            Fragment fragment = CalendarViewPagerFragment.newInstance();
            tx.replace(R.id.fl_content, fragment);
            tx.commit();
        }
    
        @Override
        public void onDateClick(CalendarDate calendarDate) {
    
            int year = calendarDate.getSolar().solarYear;
            int month = calendarDate.getSolar().solarMonth;
            int day = calendarDate.getSolar().solarDay;
            String data;
            if (day < 10) {
                data = DateUtils.getWeekday(year + "-" + month + "-0" + day);
                tv_date.setText(year + "-" + month + "-0" + day + " " + month + "月" + "  " + data);
            } else {
                data = DateUtils.getWeekday(year + "-" + month + "-" + day);
                tv_date.setText(year + "-" + month + "-" + day + " " + month + "月" + "  " + data);
            }
    
        }
    
        @Override
        public void onDateCancel(CalendarDate calendarDate) {
        }
    
        @Override
        public void onPageChange(int year, int month) {
            tv_date.setText(year + "-" + month);
            mListDate.clear();
        }
    
    }

    由于代码太多,完整代码未给出,源码直接下载即可

    源码点击下载

    转载于:https://my.oschina.net/zhangqie/blog/833036

  • 相关阅读:
    leetcode刷刷刷
    素数问题
    TCP/IP详解(整理)
    关于区块链应用方向与前景的一些思考
    设计模式
    面经中的各种问题汇总
    基于消逝时间量的共识机制(POET)
    c++语言知识点汇总
    二叉树前中后/层次遍历的递归与非递归形式(c++)
    layui表格搜索数据登录失效后的处理
  • 原文地址:https://www.cnblogs.com/twodog/p/12141336.html
Copyright © 2011-2022 走看看