精华内容
下载资源
问答
  • 谢谢~ pumkin_calendar.xml界面 android:layout_width="match_parent" android:layout_height="match_parent"> android:layout_width="match_parent" android:layout_height="590dp"> android:layout_width="wrap_...

    LayoutInflater inflater= (LayoutInflater) getApplicationContext().getSystemService(LAYOUT_INFLATER_SERVICE); //载入界面

    view =inflater.inflate(R.layout.pumkin_calendar,null);

    AlertDialog.Builder ad;

    ad = new AlertDialog.Builder(pumkinLand.this);

    ad.setView(view);

    ad.setTitle("日历");

    ad.create().show();

    如上,想通过上述代码加载日历界面。无法成功,求指导。谢谢~

    pumkin_calendar.xml界面

    android:layout_width="match_parent" android:layout_height="match_parent">

    android:layout_width="match_parent"

    android:layout_height="590dp">

    android:layout_width="wrap_content"

    android:layout_height="wrap_content"

    android:id="@+id/calendarView2"

    android:layout_alignParentTop="true"

    android:layout_centerHorizontal="true" />

    如果把CALENDARview换成其他控件,是可以正常加载出来界面的。就是日历不可。。

    展开全文
  • Android Studio 日历控件原码移植后,下面的日历月份都不能显示,程序没有报错,不知道是怎么回事?
  • AM LaTorre 时间表 对 AM LaTorre 篮球队时间表的应用程序进行了一些... 在 Android Cards 中展示游戏 从网上下载游戏列表 突出显示下一场/当前比赛 以更合适的 Java 结构解析日期和时间信息以显示本地感知时间文本
  • 本文实例讲述了Android开发之日历CalendarView用法。分享给大家供大家参考,具体如下:简介:1.CalendarView是安卓自带的一个日历控件2.在主活动中 通过设置setOnDataChangeListener() 来为其添加监听事件可在其中...

    本文实例讲述了Android开发之日历CalendarView用法。分享给大家供大家参考,具体如下:

    简介:

    1.CalendarView是安卓自带的一个日历控件

    2.在主活动中 通过设置setOnDataChangeListener() 来为其添加监听事件

    可在其中获得 洪湖所选择的年月日的 详细信息

    实例:

    183d40f8453956408a84b9a28bbaa713.gif

    基本设置方法:

    1. 日历的整体背景颜色 android:selectedWeekBackgroundColor="#aff"

    2. 月份选择部分的背景色 android:focusedMonthDateColor="#f00"

    3. 显示星期的背景色 android:weekSeparatorLineColor="#ff0"

    4. 被选中的日期的背景色 android:unfocusedMonthDateColor="#f9f"

    这里给出它的布局文件中的调用与配置:

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:gravity="center_horizontal"

    android:orientation="vertical">

    android:text="please choose your birthday :"

    android:gravity="center"

    android:layout_width="match_parent"

    android:layout_height="wrap_content"

    android:textSize="15dp"

    android:typeface="monospace"/>

    android:id="@+id/calenderView"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:firstDayOfWeek="3"

    android:shownWeekCount="4"

    android:selectedWeekBackgroundColor="#aff"

    android:focusedMonthDateColor="#f00"

    android:weekSeparatorLineColor="#ff0"

    android:unfocusedMonthDateColor="#f9f">

    在主活动中,为其添加监听事件后

    可以通过 day month dayOfMonth 来获得用户选择的日期的具体信息:

    public class MainActivity extends Activity {

    CalendarView calendarView;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_main);

    calendarView = (CalendarView) findViewById(R.id.calenderView);

    //calendarView 监听事件

    calendarView.setOnDateChangeListener(new CalendarView.OnDateChangeListener() {

    @Override

    public void onSelectedDayChange( CalendarView view, int year, int month, int dayOfMonth) {

    //显示用户选择的日期

    Toast.makeText(MainActivity.this,year + "年" + month + "月" + dayOfMonth + "日",Toast.LENGTH_SHORT).show();

    }

    });

    }

    }

    希望本文所述对大家Android程序设计有所帮助。

    展开全文
  • Android studio版本日历

    2017-09-19 16:30:59
    Android studio 版本 日历 具备显示今日,上一月,下一月,颜色标记 ,滚动翻页 Android studio 版本 日历 具备显示今日,上一月,下一月,颜色标记 ,滚动翻页
  • android studio中自定义日历

    千次阅读 2016-10-21 15:03:57
    1.效果图


    1.效果图



    展开全文
  • Android Studio 自定义日历的简单实现

    千次阅读 多人点赞 2019-06-25 23:00:10
    安装后按 alt + insert 键可以看到,见LayoutCreator 使用和下载 tip:插件只可以集成到 android studio ,不可以通过lib包导入到项目中,不然会无效 package com.example.l_b.calendar; import android.os.Bundle; ...

    效果图:

    在这里插入图片描述

    目录树

    在这里插入图片描述

    1,DayBean.java用来存储每天的信息

    package com.example.l_b.calendar.bean;
    
    public class DayBean {
        private int day;
        private int month;
        private int year;
        // 是否为当前月
        private boolean currentMonth;
        // 是否为今天
        private boolean currentDay;
    
        public int getDay() {
            return day;
        }
    
        public void setDay(int day) {
            this.day = day;
        }
    
        public int getMonth() {
            return month;
        }
    
        public void setMonth(int month) {
            this.month = month;
        }
    
        public int getYear() {
            return year;
        }
    
        public void setYear(int year) {
            this.year = year;
        }
    
        public boolean isCurrentMonth() {
            return currentMonth;
        }
    
        public void setCurrentMonth(boolean currentMonth) {
            this.currentMonth = currentMonth;
        }
    
        public boolean isCurrentDay() {
            return currentDay;
        }
    
        public void setCurrentDay(boolean currentDay) {
            this.currentDay = currentDay;
        }
    }
    

    2,自定义适配器

    package com.example.l_b.calendar.adapter;
    
    import android.content.Context;
    import android.graphics.Color;
    import android.graphics.Typeface;
    import android.view.Gravity;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.BaseAdapter;
    import android.widget.TextView;
    
    import com.example.l_b.calendar.bean.DayBean;
    
    import java.util.List;
    
    public class DayAdapter extends BaseAdapter {
    
        private List<DayBean> list;
        private Context context;
    
        public DayAdapter(List<DayBean> list, Context context) {
            this.list = list;
            this.context = context;
        }
    
        @Override
        public int getCount() {
            return list.size();
        }
    
        @Override
        public DayBean getItem(int position) {
            return list.get(position);
        }
    
        @Override
        public long getItemId(int position) {
            return 0;
        }
    
        @Override
        public View getView(int position, View view, ViewGroup parent) {
            TextView textView;
            // 使用缓存机制提高利用率
            if (view == null) {
                textView = new TextView(context);
                textView.setPadding(5, 5, 5, 5);
                view = textView;
            } else {
                textView = (TextView) view;
            }
    
            DayBean bean = getItem(position);
    
            textView.setText(bean.getDay() + "");
            textView.setGravity(Gravity.CENTER);
            textView.setTextColor(Color.BLACK);
            textView.setTypeface(Typeface.DEFAULT_BOLD);
    
            if (bean.isCurrentDay()) {
                textView.setBackgroundColor(Color.parseColor("#fd5f00"));
                textView.setTextColor(Color.WHITE);
            } else if (bean.isCurrentMonth()) {
                textView.setBackgroundColor(Color.WHITE);
                textView.setTextColor(Color.BLACK);
            } else {
                // 通过 parseColor 方法得到的颜色不可以简写,必须写满六位
                textView.setBackgroundColor(Color.parseColor("#aaaaaa"));
                textView.setTextColor(Color.BLACK);
            }
            // 返回 view 或 textView 都行,因为都是同一个对象
            return textView;
        }
    }
    
    
    这个子 view 比较简单,可以自行去做成自己想要的效果

    3,主布局

    效果图

    在这里插入图片描述

    代码

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:orientation="vertical"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    
        <TextView
            android:id="@+id/tvCurrentDate"
            android:text="2019-6-24"
            android:textSize="18sp"
            android:gravity="center"
            android:textStyle="bold"
            android:textColor="#fff"
            android:background="#fd5f00"
            android:layout_width="match_parent"
            android:layout_height="40dp" />
    
        <LinearLayout
            android:background="#f6f6e9"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    
            <TextView
                android:id="@+id/tvPreMonth"
                android:padding="5dp"
                android:text="上一月"
                android:layout_width="0dp"
                android:textSize="16sp"
                android:layout_weight="1"
                android:gravity="center"
                android:textStyle="bold"
                android:textColor="#000"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_width="1dp"
                android:background="#000"
                android:layout_height="match_parent" />
    
            <TextView
                android:id="@+id/tvNextMonth"
                android:text="下一月"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
        </LinearLayout>
    
        <TextView
            android:layout_width="match_parent"
            android:background="#000"
            android:layout_height="1dp" />
    
        <LinearLayout
            android:background="#000"
            android:padding="1dp"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周日"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周一"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周二"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周三"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周四"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周五"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
            <TextView
                android:layout_marginRight="1dp"
                android:background="#fff"
                android:text="周六"
                android:textStyle="bold"
                android:textColor="#000"
                android:gravity="center"
                android:textSize="16sp"
                android:padding="5dp"
                android:layout_width="0dp"
                android:layout_weight="1"
                android:layout_height="wrap_content" />
    
        </LinearLayout>
    
        <GridView
            android:id="@+id/gv"
            android:numColumns="7"
            android:layout_width="match_parent"
            android:layout_height="wrap_content">
    
    
        </GridView>
    
    </LinearLayout>
    
    tip:使用 ctrl + alt + 字母L 可以帮我们快速规范代码

    4,主代码

    这里使用了 LayoutCreator 插件快速绑定布局空间,非常方便,安装后按 alt + insert 键可以看到,见LayoutCreator 使用和下载
    tip:插件只可以集成到 android studio ,不可以通过lib包导入到项目中,不然会无效
    package com.example.l_b.calendar;
    
    import android.os.Bundle;
    import android.support.v7.app.AppCompatActivity;
    import android.view.View;
    import android.widget.GridView;
    import android.widget.TextView;
    
    import com.example.l_b.calendar.adapter.DayAdapter;
    import com.example.l_b.calendar.bean.DayBean;
    
    import java.text.SimpleDateFormat;
    import java.util.ArrayList;
    import java.util.Calendar;
    import java.util.Date;
    import java.util.List;
    import java.util.Locale;
    
    public class MainActivity extends AppCompatActivity {
    
        private TextView tvCurrentDate;
        private TextView tvPreMonth;
        private TextView tvNextMonth;
        private GridView gv;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            // 初始化布局
            initView();
        }
    
        private void initView() {
            tvCurrentDate = (TextView) findViewById(R.id.tvCurrentDate);
            tvPreMonth = (TextView) findViewById(R.id.tvPreMonth);
            tvNextMonth = (TextView) findViewById(R.id.tvNextMonth);
            gv = (GridView) findViewById(R.id.gv);
            // 初始化适配器
            initAdapter();
        }
    
        private void initAdapter() {
            final List<DayBean> dataList = new ArrayList<>();
            final DayAdapter adapter = new DayAdapter(dataList, this);
            gv.setAdapter(adapter);
    
            // 拿到日历对象,动态设置时间
            // 使用日历对象可以帮我们避免一些问题,如 月数 的临界点问题,到的 12 月是再加 1 的话会自动
            // 帮我们加到下一年去,同理从 1 月到 12 月也一样。
            final Calendar calendar = Calendar.getInstance();
            setCurrentData(calendar);
    
            updateAdapter(calendar, dataList, adapter);
    
            tvPreMonth.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - 1);
                    updateAdapter(calendar, dataList, adapter);
                }
            });
    
            tvNextMonth.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + 1);
                    updateAdapter(calendar, dataList, adapter);
                }
            });
        }
    
        private void updateAdapter(Calendar calendar, List<DayBean> dataList, DayAdapter adapter) {
            dataList.clear();
            setCurrentData(calendar);
            // 得到本月一号的星期索引
            // 索引从 1 开始,第一个为星期日,减1是为了与星期对齐,如星期一对应索引1,星期二对应索引二
            calendar.set(Calendar.DAY_OF_MONTH, 1);
            int weekIndex = calendar.get(Calendar.DAY_OF_WEEK) - 1;
    
    
            // 将日期设为上个月
            calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - 1);
            int preMonthDays = getMonth(calendar.get(Calendar.MONTH) + 1, calendar.get(Calendar.YEAR));
            // 拿到上一个月的最后几天的天数
            for (int i = 0; i < weekIndex; i++) {
                DayBean bean = new DayBean();
                bean.setYear(calendar.get(Calendar.YEAR));
                bean.setMonth(calendar.get(Calendar.MONTH) + 1);
                bean.setDay(preMonthDays - weekIndex + i + 1);
                bean.setCurrentDay(false);
                bean.setCurrentMonth(false);
                dataList.add(bean);
            }
    
            // 将日期设为当月
            calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + 1);
            int currentDays = getMonth(calendar.get(Calendar.MONTH) + 1, calendar.get(Calendar.YEAR));
            // 拿到当月的天数
            for (int i = 0; i < currentDays; i++) {
                DayBean bean = new DayBean();
                bean.setYear(calendar.get(Calendar.YEAR));
                bean.setMonth(calendar.get(Calendar.MONTH) + 1);
                bean.setDay(i + 1);
                // 当前日期
                String nowDate = getFormatTime("yyyy-M-d", Calendar.getInstance().getTime());
                // 选择的日期
                String selectDate = getFormatTime("yyyy-M-", calendar.getTime()) + (i + 1);
                // 假如相等的话,那么就是今天的日期了
                if (nowDate.contentEquals(selectDate)) {
                    bean.setCurrentDay(true);
                } else {
                    bean.setCurrentDay(false);
                }
                bean.setCurrentMonth(true);
                dataList.add(bean);
            }
            
            // 拿到下个月第一周的天数
            // 先拿到下个月第一天的星期索引
            // 之前设为了1号,所以将日历对象的月数加 1 就行了
            calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) + 1);
            weekIndex = calendar.get(Calendar.DAY_OF_WEEK) - 1;
    
            for (int i = 0; i < 7 - weekIndex; i++) {
                DayBean bean = new DayBean();
                bean.setYear(calendar.get(Calendar.YEAR));
                bean.setMonth(calendar.get(Calendar.MONTH) + 1);
                bean.setDay(i + 1);
                bean.setCurrentDay(false);
                bean.setCurrentMonth(false);
                dataList.add(bean);
            }
    
            adapter.notifyDataSetChanged();
            // 最后将日期设为当月
            calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH) - 1);
        }
        // 设置当前的时间
        private void setCurrentData(Calendar calendar) {
            tvCurrentDate.setText(calendar.get(Calendar.YEAR) + "年" + (calendar.get(Calendar.MONTH) + 1) + "月");
        }
        // 判断是否为闰年
        public boolean isRunYear(int y) {
            return y % 4 == 0 && y % 100 != 0 || y % 400 == 0;
        }
        // 格式化时间,设置时间很方便,也比较简单,学的很快
        public static String getFormatTime(String p, Date t) {
            return new SimpleDateFormat(p, Locale.CHINESE).format(t);
        }
        // 传入年和月得出当月的天数
        public int getMonth(int m, int y) {
            switch (m) {
                case 2:
                    return isRunYear(y) ? 29 : 28;
                case 4:
                case 6:
                case 9:
                case 11:
                    return 30;
                default:
                    return 31;
            }
        }
    }
    
    最后大功告成,有问题可以问,看到会回复!
    展开全文
  • Android studio 点击弹出日历框之系统自带 Android studio点击弹出日历框之系统自带 Calendar 1.xml页面 xml <LinearLayout android:layout_gravity="center" android:background="@drawable/textview_back" ...
  • Android studio 软件编写的简单工程,,签到的日历,以及简单的计算器实现功能,都已文件夹的形式建好了
  • Android studio 点击按钮弹出日历和时间

    万次阅读 热门讨论 2018-07-26 17:13:17
    大家可以去看看 ,他写的很详细,我在他的基础上修改用到自己的项目里了,给...这次的还是在之前的点击按钮隐藏布局的基础上做的,所以关于日历和时间是两个按钮和两个text view来显示选择的值得 &lt;Button ...
  • 昨天实现了一个日历控件,主要包含公历和农历的展示,今天将其完成全部功能,主要包含节假日的展示、二十四节气展示。支持手势滑动显示下一个月.如有实现不合理的地方希望大家提供宝贵的意见。
  • android studio实现简易秒表.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
  • Android Studio 基础 之 获取系统Calendar 日历日程 (涉及指定日期时间判断是星期几的方法使用)的方法整理目录Android Studio 基础 之 获取系统Calendar 日历日程 (涉及指定日期时间判断是星期几的方法使用)的方法...
  • 让工作主动找你即使你是零基础,也能掌握真正的技术低风险、低投入,随时随地学习全方位的技术支持:高清视频、源码、资料、技术指导课程目录章节1:初识篇课时1开发环境搭建16:52课时2Android Studio 的使用17:13...
  • 目录GridViewcalendarViewDatePicker GridView 表格视图。 MainActivity.java ... import androidx.appcompat.app.AppCompatActivity; ...import android.os.Bundle;...import android.view.View;...import android.widget.
  • 基于Android Studio开发的课程表APP,现有功能: 1、获取四川大学教务处在校学生课程表。 2、四川大学教务处比赛信息、学院信息、讲座信息等。 3、日程表功能,可以新建、删除日程提醒。 4、查询四川大学课程信息 ...
  • Android Studio 基础 之 获取系统Calendar 日历日程 (涉及指定日期时间判断是星期几的方法使用)的方法整理 目录 Android Studio 基础 之 获取系统Calendar 日历日程 (涉及指定日期时间判断是星期几的方法使用...
  • Android获取一周每一天日期的源码,Android Studio 2.0 环境.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
  • 这边文章是从我的自己撰写掘金博文搬过来的: Android Studio 的五种常见控件和五种常见布局,同时通过这篇文章可以比较一下CSDN和掘金网站的优缺点… 一、View和ViewGroup Android体系中UI的设计采用视图层次的结构...
  • android studio自定义日历
  • Android Studio

    2018-01-09 10:10:32
    写给 Android 开发者的混淆使用手册 点击打开链接 毫无疑问,混淆是打包过程中最重要的流程之一,在没有特殊原因的情况下,所有 app 都应该开启混淆。 首先,这里说的的混淆其实是包括了代码压缩、代码混淆以及资源...
  • 1. 用户在app端选择个日期就能查询这个月的考勤打卡信息,并以日历上标注不同的颜色来显示给用户,当然这个日历是recyclerview做出来的,只是每行显示7个,表示一周的七天. 2. 员工考勤打卡的数据获取与分析都是在...
  • 1.模拟电子时钟:能够以模拟钟表的方式显示...电子日历牌:能够显示一个集公历与农历对照查询的日历牌。最好具有节气和各种类型节日提示等功能。 4.在日历行开发简单记事,备忘提醒等功能,能够记录个人每日重要活动。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,077
精华内容 1,230
关键字:

androidstudio日历