导航:首页 > 操作系统 > android日历控件开发

android日历控件开发

发布时间:2022-05-21 23:15:15

android开发中能不能把时间控件跟日期控件合在一起

安卓里面的时间控件与日期控件都是分开的,如果要同时使用的话用户体验度那肯定不好,整合了安卓中的时间与日期控件,可以同时显示出来方便用户进行选择,使用时只需要将文件导入项目中,再需要用到的地方使用如下代码
[html] view plainprint?
package com.andyidea.calenderdemo;

import java.util.Calendar;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.Dialog;
import android.app.TimePickerDialog;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.TimePicker;

public class MainActivity extends Activity {

private EditText showDate = null;
private Button pickDate = null;
private EditText showTime = null;
private Button pickTime = null;

private static final int SHOW_DATAPICK = 0;
private static final int DATE_DIALOG_ID = 1;
private static final int SHOW_TIMEPICK = 2;
private static final int TIME_DIALOG_ID = 3;

private int mYear;
private int mMonth;
private int mDay;
private int mHour;
private int mMinute;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

initializeViews();

final Calendar c = Calendar.getInstance();
mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);

mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);

setDateTime();
setTimeOfDay();
}

/**
* 初始化控件和UI视图
*/
private void initializeViews(){
showDate = (EditText) findViewById(R.id.showdate);
pickDate = (Button) findViewById(R.id.pickdate);
showTime = (EditText)findViewById(R.id.showtime);
pickTime = (Button)findViewById(R.id.picktime);

pickDate.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Message msg = new Message();
if (pickDate.equals((Button) v)) {
msg.what = MainActivity.SHOW_DATAPICK;
}
MainActivity.this.dateandtimeHandler.sendMessage(msg);
}
});

pickTime.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
Message msg = new Message();
if (pickTime.equals((Button) v)) {
msg.what = MainActivity.SHOW_TIMEPICK;
}
MainActivity.this.dateandtimeHandler.sendMessage(msg);
}
});
}

/**
* 设置日期
*/
private void setDateTime(){
final Calendar c = Calendar.getInstance();

mYear = c.get(Calendar.YEAR);
mMonth = c.get(Calendar.MONTH);
mDay = c.get(Calendar.DAY_OF_MONTH);

updateDateDisplay();
}

/**
* 更新日期显示
*/
private void updateDateDisplay(){
showDate.setText(new StringBuilder().append(mYear).append("-")
.append((mMonth + 1) < 10 ? "0" + (mMonth + 1) : (mMonth + 1)).append("-")
.append((mDay < 10) ? "0" + mDay : mDay));
}

/**
* 日期控件的事件
*/
private DatePickerDialog.OnDateSetListener mDateSetListener = new DatePickerDialog.OnDateSetListener() {

public void onDateSet(DatePicker view, int year, int monthOfYear,
int dayOfMonth) {
mYear = year;
mMonth = monthOfYear;
mDay = dayOfMonth;

updateDateDisplay();
}
};

/**
* 设置时间
*/
private void setTimeOfDay(){
final Calendar c = Calendar.getInstance();
mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);
updateTimeDisplay();
}

/**
* 更新时间显示
*/
private void updateTimeDisplay(){
showTime.setText(new StringBuilder().append(mHour).append(":")
.append((mMinute < 10) ? "0" + mMinute : mMinute));
}

/**
* 时间控件事件
*/
private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() {

@Override
public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
mHour = hourOfDay;
mMinute = minute;

updateTimeDisplay();
}
};

@Override
protected Dialog onCreateDialog(int id) {
switch (id) {
case DATE_DIALOG_ID:
return new DatePickerDialog(this, mDateSetListener, mYear, mMonth,
mDay);
case TIME_DIALOG_ID:
return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute, true);
}

return null;
}

@Override
protected void onPrepareDialog(int id, Dialog dialog) {
switch (id) {
case DATE_DIALOG_ID:
((DatePickerDialog) dialog).updateDate(mYear, mMonth, mDay);
break;
case TIME_DIALOG_ID:
((TimePickerDialog) dialog).updateTime(mHour, mMinute);
break;
}
}

/**
* 处理日期和时间控件的Handler
*/
Handler dateandtimeHandler = new Handler() {

@Override
public void handleMessage(Message msg) {
switch (msg.what) {
case MainActivity.SHOW_DATAPICK:
showDialog(DATE_DIALOG_ID);
break;
case MainActivity.SHOW_TIMEPICK:
showDialog(TIME_DIALOG_ID);
break;
}
}

};

}

Ⅱ 实现日历控件,请问用什么方式

XML中布局:

<com.zcw.widget.MonthView

android:id="@+id/monthView1"

android:padding="20dp"

android:background="@drawable/dialog_full_holo_light"

android:layout_width="wrap_content"

android:layout_height="wrap_content" >

</com.zcw.widget.MonthView>

java代码:

monthView.setAdapter(new MonthAdapter() {

@Override

public View createCellView(ViewGroup viewGroup, int position) {

TextView textView = new TextView(getContext());

textView.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));

textView.setGravity(Gravity.CENTER);

return textView;

}

@Override

public void bindCellView(ViewGroup viewGroup, View child, int position, Calendar calendar) {

TextView textView = (TextView) child;

textView.setText(""+calendar.get(Calendar.DAY_OF_MONTH));

}

});

Ⅲ android日历控件

1.DatePicker

在Android中,DatePicker用来实现日期输入设置,日期的设置范围为1900年1月1日至2100年12月31日。

1.1常用xml属性

DatePicker的常用xml属性如图1所示:

图1 DatePicker常用xml属性

其中,android:calendarViewShown[boolean]用于设置是否显示calendar view;android:endYear[int]用于设置截至日期;android:maxDate[int]用于设置最大的日期;android:minDate[int]用于设置最小的日期;android:spinnersShown[boolean]用于设置是否显示spinners;android:startYear[int]用于设置起始日期。

1.2常用方法

DatePicker的常用方法有以下一些:

(1)public CalendarView getCalendarView(); //获取CalendarView

(2)public boolean getCalendarViewShown(); //获取CalendarView是否显示

(3)public int getDayOfMonth(); //获取当前日期的日

(4)public long getMaxDate(); //获取最大日期

(5)public long getMinDate(); //获取最小日期

(6)public int getMonth(); //获取当前日期的月

(7)public boolean getSpinnersShown(); //获取Spinners是否显示

(8)public int getYear(); //获取当前日期的年

(9)public void init(int year,int monthOfYear,int dayOfMonth,

DatePicker.OnDateChangedListener onDateChangedListener); //初始化日期

(10)public void setCalendarViewShown(boolean shown);//设置是否显示CalendarView

(11)public void setMaxDate(long maxDate); //设置最大日期

(12)public void setMinDate(long minDate); //设置最小日期

(13)public void setSpinnersShown(boolean shown); //设置是否显示Spinners

(14)public void updateDate(int year,int month,int dayOfMonth); //更新当前日期2.TimePicker

在Android中,TimePicker用来实现时间输入设置,可以选择12或24小时模式。TimePicker的常用方法有以下一些:

(1)public Integer getCurrentHour(); //获取当前时间的小时

(2)public Integer getCurrentMinute(); //获取当前时间的分钟

(3)public boolean is24HourView(); //获取是否为24小时模式

(4)public void setCurrentHour(Integer currentHour); //设置当前时间的小时

(5)public void setCurrentMinute(Integer currentMinute); //设置当前时间的分钟

(6)public void setIs24HourView(Boolean is24HourView); //设置24小时模式3.DatePickerDialog

在Android中,DatePickerDialog用来显示日期对话框。DatePickerDialog的常用方法有以下一些:

(1)public DatePicker getDatePicker(); //获取DatePicker中的日期值

(2)public void onClick(DialogInterface dialog,int which); //响应对话框中的点击事件

(3)public void onDateChanged(DatePicker view,int year,int month,int day); //响应日期改变事件

(4)public void updateDate(int year,int monthOfYear,int dayOfMonth); //更新当前日期4.TimePickerDialog

在Android中,TimePickerDialog用来显示时间对话框。TimePickerDialog的常用方法有以下一些:

(1)public void onClick(DialogInterface dialog,int which); //响应对话框中的点击事件

(2)public void onTimeChanged(TimePicker view,int hourOfDay,int minute); //响应时间改变事件

(3)public void updateTime(int hourOfDay,int minuteOfHour); //更新当前时间5.AnalogClock

在Android中,AnalogClock用于显示指针式时钟,该时钟仅有时钟和分钟两个指针。6.DigitalClock

在Android中,DigitalClock用来显示数字式时钟,显示格式为HH:MM:SS AM/PM。

Ⅳ 使用android自带的日历控件怎么标记特定的

初始情况

3.这里还要感谢前辈的代码作为参考,毕竟以前也没有写过关于日历方面的东西,别人确实写得不错,我在原基础上加入了数据库操作等补充,以完成自己实际需求,作为尊重首先给出原作者的连接

就是这里–>Android自定义控件实现可多选课程日历CalendarView

4.然后贴出来关于数据库操作的代码,给大家作为参考

DatabaseHelper .java 这是关于简单数据库操作的部分

package com.xugongming38.editcalendar.utils;import android.content.Context;import android.database.sqlite.SQLiteDatabase;import android.database.sqlite.SQLiteOpenHelper;/*** Created by dell on 2017/5/18.*/public class DatabaseHelper extends SQLiteOpenHelper {public static final String CREATE_DIARY = "create table Hair("+ "id integer primary key autoincrement, "+ "content text)";private Context mContext;public DatabaseHelper(Context context, String name, SQLiteDatabase.CursorFactory factory, int version){super(context, name, factory, version);mContext = context;}@Overridepublic void onCreate(SQLiteDatabase db) {db.execSQL(CREATE_DIARY);}@Overridepublic void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {db.execSQL("drop table if exists Hair");onCreate(db);}}

DataHelper .java 简化数据操作接口,避免直接操作数据库,做了再一层的封装,建议读者也这样做,可以让代码更清晰,更容易复用


package com.xugongming38.editcalendar.utils;import android.content.ContentValues;import android.content.Context;import android.database.Cursor;import android.database.sqlite.SQLiteDatabase;import java.util.ArrayList;import java.util.List;/*** Created by dell on 2017/5/18.*/public class DataHelper {public static DatabaseHelper mHelper;public static void deleteData2List(String content) {SQLiteDatabase dbDelete = mHelper.getWritableDatabase();dbDelete.delete("Hair", "content = ?", new String[]{content});}public static void addData2List(String content) {SQLiteDatabase db = mHelper.getWritableDatabase();ContentValues values = new ContentValues();values.put("content", content);db.insert("Hair", null, values);values.clear();}public static List<String> getDataList(Context context) {if(mHelper==null){mHelper = new DatabaseHelper(context, "Hair.db", null, 1);}List<String> dataList = new ArrayList<>();SQLiteDatabase sqLiteDatabase = mHelper.getWritableDatabase();Cursor cursor = sqLiteDatabase.query("Hair", null, null, null, null, null, null);if (cursor.moveToFirst()) {do {String content = cursor.getString(cursor.getColumnIndex("content"));dataList.add(content);} while (cursor.moveToNext());}cursor.close();return dataList;}}

Ⅳ 开发Android 日历教程

一、创建
Android
Project
在新建对话框中输入
App
属性,SDK版本全部选最新的,不作版本兼容。主题选择
Holo
Dark。
下一步,使用默认设置
下一步,使用默认设置
下一步,使用默认配置
下一步,使用默认设置
创建完成后的初始画面
在上面的步骤中,我们选择了创建
MainActivity,ADT
帮我们在
src
目录下生成了
MainActivity.java
文件,在
res/layout/
目录下生成了
activity_main.xml
文件,并在编辑窗口打开,如上图,是
UI
界面定义文件,这是一个标准的
xml
文件,显示的图像就是由编辑器解析
xml
文件描绘出来的。点击下方的
"Graphical
Layout"

“activity_main.xml"
可以在图形编辑

xml
文本编辑器之间切换。
为了项目结构清晰,我们新建一个包,专门用来放
activity:
包名定为
ui.activity
这里,将
Package
Explorer
的显示方式改为
Hierarchical
拖动
MainActivity.java

ui.activity
包下,弹出更新对话框,选择OK。
由于改变了
activity
的位置,我们需要更新
AndroidManifest.xml,更正
Application
的配置。
如下图,双击打开
AndroidManifest.xml,选择
Application
标签页,选中
Application
Nodes
中的
MainActivity,右边的
Name
属性是错误的,点击
Browse
重新选择,设为:com.lingsmm.purelunarcalendar.ui.acivity
继续向下拉,将
Screen
orientation
设置为
”sensorLandscape“,表示屏幕方向是横屏,并感应重力方向作调整。
界面编辑窗口上方是工具栏:
1:多屏预览,如果你的程序要兼容多种尺寸的设备,可以选择此项。
2:主屏尺寸设定(我们的应用,不作兼容,只针对
google
Nexus
7,将此选择为
Nexus
7,以10”画面进行编辑布局)
3:屏幕方向,我们选择横屏
4:主题
5:关联的
Java
类,Context
实例由它创建。
6:多语言支持。
7:系统版本选择,如果兼容多版本,可以选择不同版本进行预览。

Ⅵ Android下几个相关的时间日期控件的用法

获取年月日,之前的日期不能选择

日历c = Calendar.getInstance(); //获取系统的工具类【可以获取时间】DatePickerDialog datePickerDialog = new DatePickerDialog(context,new DatePickerDialog.OnDateSetListener(){@覆盖public void onDateSet(DatePicker view,int year,int month,int dayOfMonth){月+ = 1;yuyueTime.setText(year +“ - ”+ month +“ - ”+ dayOfMonth);}},c.get(Calendar.YEAR),c.get(Calendar.MONTH),c.get(Calendar.DATE)); //设置默认时间。datePickerDialog.getDatePicker()setMinDate(c.getTime()的getTime()); //设置最小值datePickerDialog.show();

相关类的认识
选取器(的DatePicker,TimerPicker,NumberPicker)
其中的DatePicker和TimerPicker都有窗口的形式显示日期和时间,再返回数据。

下面分别介绍这几种时间类的使用方法。

一.DatePicker日期选择类的使用

DatePicker的常用的XML属性

XML属性

描述

机器人:calendarViewShown 设置该日期选择是否显示CalendarView组件。

机器人:endYear 设置日期选择器允许选择的最后一年。

安卓的maxDate 设置该日期选择器的最大日期。以MM / DD / YYYY格式指定最大日期。

安卓的minDate 设置该日期选择器的最小日期。以MM / DD / YYYY格式指定最小日期。

机器人:spinnersShown 设置该日期选择器是否显示微调日期选择组件。

机器人:startYear 设置日期选择器允许选择的第一年。


当用户更改了的DatePicker里的年,月,日时,将触发OnDateChangedListener监听器的onDateChange()事件。

二.TimePicker日期选择类的使用


当用户更改了TimePicker里的时,分时,将触发OnTimeChangedListener监听器的onTimeChanged事件。

下面是日期选择类和时间选择类的一个使用示例:

(一)布局文件设计

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:text="显示日期的控件" /><DatePicker android:id="@+id/main_dp"android:layout_width="wrap_content"android:layout_height="wrap_content" /><TextView android:layout_width="wrap_content"android:layout_height="wrap_content"android:layout_gravity="center"android:text="显示时间的控件" /><TimePicker android:id="@+id/main_tp_showTime"android:layout_width="wrap_content"android:layout_height="wrap_content" /><TextView android:id="@+id/main_tv_showdate"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="显示日期" /><TextView android:id="@+id/main_tv_showtime"android:layout_width="wrap_content"android:layout_height="wrap_content"android:text="显示时间" /></LinearLayout>

Ⅶ android studio 日历控件怎么简单些

每个安卓系统自带的日历都不尽相同,而且有些日历为了节省内存过于精简,是没有这种功能的。如果可以做到的一般会有个新建的按钮,新建日程提醒。在更多按钮可以设置提醒的方式。首先你要自定义一个控件,一般采用继承原有控件的方式,然后在布局文件使用你要用的自定义控件,需要包含包名,再就是在activity中写控件的控制代码。可以看看安卓巴士教程:http://www.apkbus.com/forum-96-1.html

Ⅷ 安卓日历整体布局是怎么实现的

自定义日历控件,支持旧历、节气、日期标注、点击操作 (参考网络上的日历控件改写)
注:将下面的四张资源图片拷贝到所建包的下一个image目录中,如Calendar.java 所在包为
cc.util.android.view,则需要再创建一个包cc.util.android.view.image 然后将图片拷贝进去
/****************从此出开始将代码拷贝到一个文件中*******************/
package cc.util.android.view;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Date;
import java.util.List;
import java.util.Locale;
import android.annotation.SuppressLint;
import android.content.Context;
import android.graphics.BitmapFactory;
import android.graphics.Color;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.StateListDrawable;
import android.text.TextUtils.TruncateAt;
import android.util.AttributeSet;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.Gravity;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
import android.view.View.OnTouchListener;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.TranslateAnimation;
import android.widget.BaseAdapter;
import android.widget.GridView;
import android.widget.ImageButton;
import android.widget.LinearLayout;
import android.widget.RelativeLayout;
import android.widget.TextView;
import android.widget.ViewFlipper;
import android.widget.AbsListView.LayoutParams;

/**
* 日历控件,支持旧历、节气、日期标注、点击操作 (参考网络上的日历控件改写)
*
* @author wangcccong
* @version 1.406 create at: Mon, 03 Sep. 2014
* <br>update at: Mon, 23 Sep. 2014
* 新增日期标注和点击操作
*/
public class CalendarView extends LinearLayout implements OnTouchListener,
AnimationListener, OnGestureListener {

/**
* 点击日历
*/
public interface OnCalendarViewListener {
void onCalendarItemClick(CalendarView view, Date date);
}

/** 顶部控件所占高度 */
private final static int TOP_HEIGHT = 40;
/** 日历item中默认id从0xff0000开始 */
private final static int DEFAULT_ID = 0xff0000;

// 判断手势用
private static final int SWIPE_MIN_DISTANCE = 120;
private static final int SWIPE_MAX_OFF_PATH = 250;
private static final int SWIPE_THRESHOLD_VELOCITY = 200;

// 屏幕宽度和高度
private int screenWidth;

// 动画
private Animation slideLeftIn;
private Animation slideLeftOut;
private Animation slideRightIn;
private Animation slideRightOut;
private ViewFlipper viewFlipper;
private GestureDetector mGesture = null;

/** 上一月 */
private GridView gView1;
/** 当月 */
private GridView gView2;
/** 下一月 */
private GridView gView3;

boolean bIsSelection = false;// 是否是选择事件发生
private Calendar calStartDate = Calendar.getInstance();// 当前显示的日历
private Calendar calSelected = Calendar.getInstance(); // 选择的日历
private CalendarGridViewAdapter gAdapter;
private CalendarGridViewAdapter gAdapter1;
private CalendarGridViewAdapter gAdapter3;

private LinearLayout mMainLayout;
private TextView mTitle; // 显示年月

private int iMonthViewCurrentMonth = 0; // 当前视图月
private int iMonthViewCurrentYear = 0; // 当前视图年

private static final int caltitleLayoutID = 66; // title布局ID
private static final int calLayoutID = 55; // 日历布局ID
private Context mContext;

/** 标注日期 */
private final List<Date> markDates;

private OnCalendarViewListener mListener;

public CalendarView(Context context) {
this(context, null);
}

public CalendarView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
mContext = context;
markDates = new ArrayList<Date>();
init();
}

// 初始化相关工作
protected void init() {
// 得到屏幕的宽度
screenWidth = mContext.getResources().getDisplayMetrics().widthPixels;

// 滑动的动画
slideLeftIn = new TranslateAnimation(screenWidth, 0, 0, 0);
slideLeftIn.setDuration(400);
slideLeftIn.setAnimationListener(this);
slideLeftOut = new TranslateAnimation(0, -screenWidth, 0, 0);
slideLeftOut.setDuration(400);
slideLeftOut.setAnimationListener(this);
slideRightIn = new TranslateAnimation

Ⅸ Android开发有没有人做过日历控件,可以签到的

可以按照这个思路:

首先是MainActivity,源码如下

<prename="code"class="java">{

privateSignCalendarcalendar;
privateStringdate;
privateintyears;
privateStringmonths;
privateButtonbtn_sign;

@Override
protectedvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SimpleDateFormatformatter=newSimpleDateFormat("yyyy-MM-dd");
DatecurDate=newDate(System.currentTimeMillis());//获取当前时间
date=formatter.format(curDate);
calendar=(SignCalendar)findViewById(R.id.sc_main);
btn_sign=(Button)findViewById(R.id.btn_sign);
btn_sign.setOnClickListener(newOnClickListener(){

@Override
publicvoidonClick(Viewv){
//TODOAuto-generatedmethodstub
List<String>list=newArrayList<String>();
list.add("2016-06-30");
list.add(date);
//calendar.setCalendarDaysBgColor(list,
//R.drawable.bg_sign_today);
calendar.addMarks(list,0);
}
});
}

}


以下是布局文件:

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context="com.h.cheng.signcalendar.MainActivity">

<com.h.cheng.signcalendar.SignCalendar
android:id="@+id/sc_main"
android:layout_width="match_parent"
android:layout_height="320dp"
android:clickable="true">
</com.h.cheng.signcalendar.SignCalendar>

<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="15dp"
android:orientation="horizontal">

<Button
android:id="@+id/btn_sign"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:background="#f00"
android:text="签到"
android:textColor="#fff"/>
</LinearLayout>

</LinearLayout>

Ⅹ android开发,日历控件问题,怎么得到当前选中的日期

看看日历都有哪些属性、方法

阅读全文

与android日历控件开发相关的资料

热点内容
共享文件夹能在哪里找到 浏览:430
旅游订旅店用什么app 浏览:237
一个女程序员的声音 浏览:491
魔术app怎么用 浏览:340
单片机有4个8位的io口 浏览:897
win10rar解压缩软件 浏览:166
plc教程pdf 浏览:668
pythonshell清屏命令 浏览:279
检测到加密狗注册服务器失败 浏览:204
解压后手机如何安装 浏览:519
极客学院app为什么下架 浏览:14
图片批量压缩绿色版 浏览:652
东北程序员帅哥 浏览:707
加密封条风噪小 浏览:974
安阳少儿编程市场 浏览:499
云服务器建设原理 浏览:259
javajunit4for 浏览:847
华为服务器如何进阵列卡配置 浏览:435
apache服务器ip地址访问 浏览:720
如何买到安卓手机预装软件 浏览:537