导航:首页 > 操作系统 > android范围选择控件

android范围选择控件

发布时间:2022-09-02 10:02:53

android 时间滚动轮 选择日期的范围

可以

xml设置:
<DatePicker
android:id="@+id/dp_date"
android:layout_width="wrap_content"
android:layout_height="150dp"
android:layout_gravity="center_horizontal"
android:calendarViewShown="false"
android:minDate="mm/dd/yyyy"
android:maxDate="mm/dd/yyyy"
/>
mm/dd/yyyy为 月/日/年 如 01/01/2014

或者在代码中设置:
...
datePicker = (DatePicker)findViewById(R.id.dp_date);

//设置开始日期
//从今天开始
Calendar startCalendar = Calendar.getInstance();
startCalendar.set(Calendar.HOUR, 0);
startCalendar.set(Calendar.SECOND, 0);
startCalendar.set(Calendar.MINUTE, 0);
startCalendar.set(Calendar.MILLISECOND, 0);
datePicker.setMinDate(startCalendar.getTimeInMillis());

//设置结束日期
//到280天后结束
Calendar endCalendar = Calendar.getInstance();
endCalendar.set(Calendar.DATE, startCalendar.get(Calendar.DATE) + 280);
long endDate = endCalendar.getTimeInMillis();
datePicker.setMaxDate(endDate);
...

⑵ 如何做一个可以控制时间选择范围的datepicker-Android开发问答

用数字选择器控件numberpicker,自己从新初始化值,然后再处理他们之间的关系

⑶ Android 怎么实现支持所有View的通用的下拉刷新控件

下拉刷新对于一个app来说是必不可少的一个功能,在早期大多数使用的是chrisbanes的PullToRefresh,或是修改自该框架的其他库。而到现在已经有了更多的选择,github上还是有很多体验不错的下拉刷新。
而下拉刷新主要有两种实现方式:
1. 在ListView中添加header和footer,监听ListView的滑动事件,动态设置header/footer的高度,但是这种方式只适用于ListView,RecyclerView。
2. 第二种方式则是继承ViewGroup或其子类,监听事件,通过scroll或Layout的方式移动child。如图(又分两种情况)

Layout时将header放到屏幕外面,target则填充满屏幕。这个也是SwipeRefreshLayout的实现原理(第二种,只下拉header)

这两种(指的是继承ListView或继承ViewGroup)下拉刷新的实现方式主要有以下区别

继承ListView/RecyclerView

继承ViewGroup或其子类

适用范围
ListView/Recycler
理论支持所有View和ViewGroup

加载更多
实现简单,体验好
可以实现,看需求了,做不出ListView那种加载效果的,体验比较一般

多点触控
可以完美支持
header下拉状态中是完美支持的,但是回去之后,很难将多点触控事件传递给child

案例
QQ好友列表
美团、京东等

而今天,我打算先讲第二种方式实现方式,继承ViewGroup,代码可以直接参考SwipeRefreshLayout,或者pullToRefresh,或者ultra-pull-to-refresh

一、思考和需求

下拉刷新需要几个状态:Reset–> Pull – > Refreshing – >Completed –>Reset

为了应对各式各样的下拉刷新设计,我们应该提供设置自定义的Header,开发者可以通过实现接口从而自定义自己的header。

而且header可以有两种显示方式,一种是只下拉header,另外一种则是header和target一起下拉。

二、着手实现代码

⑷ android 怎么设置timePicker可以选择的时间范围

Android DatePickerDialog只能设置当前显示的值,不能设置选择范围,范围需要在代码中判断。
在Android程序中,通常需要使用DatePicker来设置日期,TimePicker来设置时间。其基本步骤是:
1.先定义DatePicker和TimePicker布局。
2.然后通过Calendar类获得系统时间。
3.接着通过init方法将日期传递给DatePicker初始化日期控件。
4.在响应点击事件中可以通过DatePicker的getYear()、getDayOfMonth()、getMonth()函数获取具体日期。
同时可以在OnDateChangedListener事件中监听日期变化,设置时间函数方法同理。

⑸ android DatePickerDialog怎么设置日期选择范围。

时间设置对话框DatePickerDialog的使用
一、可以同过重载DatePickerDialog的setTitle来设置个性的标题
比如:
@Override
public void setTitle(CharSequence title) {
// TODO Auto-generated method stub
java.text.DateFormat dataFormat = (DateFormat
.getDateFormat(getContext()));
mCalendar = Calendar.getInstance();
//可得到“12/31/1969(Wed)”形式的日期格式
String strTitle=dataFormat.format(mCalendar.getTime())
+ DateFormat.format(" (E)", mCalendar.getTime()).toString();
super.setTitle(dataFormat.format(strTitle);
}

二、通过onDateChanged回调函数监听时间的改变
当时间改变时(编辑) 以下函数回被调用
public void onDateChanged(DatePicker view, int year, int month, int day) {
Log.i("hubin","onDateChanged");
}

三、通过updateDate()设置年月日
public void updateDate (int year, int monthOfYear, int dayOfMonth)设置DatePickerDialog的年,月,日

四、通过onDateChangedListener来监听时间设置对话框的确定按钮被按下
onDateChangedListener的onDateSet是用于都在时间设置对话框的确定按钮被按下的监听

import java.util.Calendar;
import java.util.Date;
import java.util.Locale;

import android.app.Activity;
import android.app.DatePickerDialog;
import android.app.DatePickerDialog.OnDateSetListener;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.TextView;

public class TestClock extends Activity implements OnDateSetListener, OnClickListener {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button btn = (Button)findViewById(R.id.date);
btn.setOnClickListener(this);
}

public void onClick(View v) {//普通按钮事件
Calendar d = Calendar.getInstance(Locale.CHINA);
//创建一个日历引用d,通过静态方法getInstance() 从指定时区 Locale.CHINA 获得一个日期实例
Date myDate=new Date();
//创建一个Date实例
d.setTime(myDate);
//设置日历的时间,把一个新建Date实例myDate传入
int year=d.get(Calendar.YEAR);
int month=d.get(Calendar.MONTH);
int day=d.get(Calendar.DAY_OF_MONTH);
//获得日历中的 year month day
DatePickerDialog dlg=new DatePickerDialog(this,this,year,month,day);
//新建一个DatePickerDialog 构造方法中
// (设备上下文,OnDateSetListener时间设置监听器,默认年,默认月,默认日)
dlg.show();
//让DatePickerDialog显示出来
}

public void onDateSet(DatePicker view, int year, int monthOfYear,int dayOfMonth){
//DatePickerDialog 中按钮Set按下时自动调用
TextView txt = (TextView) findViewById(R.id.text);
//通过id获得TextView对象
txt.setText(Integer.toString(year) + "-" +
Integer.toString(monthOfYear) + "-" +
Integer.toString(dayOfMonth));
//设置text
}
}

main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
android:id="@+id/text"
/>

<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/date"
android:text="设置时间"
>
</Button>
</LinearLayout>

⑹ 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的QQ浏览器里控件editText输入文本超出范围后面的就看不到了如何实现输入文字在

你好! QQ浏览器输入文字有一定的数量 到达数量 就不以输入了 你可以选择适合自己的浏览器 使用安装 望采纳 祝愉快!

⑻ android DatePickerDialog怎么设置日期选择范围

您好,很高兴为您解答。

自定义dialog实现的,在DatePicker的onDateChangedListentr事件中实现范围的控制

{
/**.*/

@Override
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
finalTextViewtext=(TextView)findViewById(R.id.text);
LayoutInflaterl=LayoutInflater.from(this);
Viewv=l.inflate(R.layout.dialog,null);
finalDatePickerdatePicker=(DatePicker)v
.findViewById(R.id.datepicker);

datePicker.init(2000,1,3,newOnDateChangedListener(){

@Override
publicvoidonDateChanged(DatePickerview,intyear,
intmonthOfYear,intdayOfMonth){

if(isDateAfter(view)){
view.init(2000,11,30,this);
}
if(isDateBefore(view)){
view.init(1949,11,30,this);
}
}

privatebooleanisDateAfter(DatePickertempView){
if(tempView.getYear()>2000){
returntrue;
}else
returnfalse;
}

privatebooleanisDateBefore(DatePickertempView){
if(tempView.getYear()<1921){
returntrue;
}else
returnfalse;
}
});
Dialogdialog=newAlertDialog.Builder(this)
.setTitle(
datePicker.getYear()+"年"
+(datePicker.getMonth()+1)+"月"
+datePicker.getDayOfMonth()+"日")
.setView(v)
.setIcon(R.drawable.ic_dialog_time)
.setNeutralButton("设置",newDialogInterface.OnClickListener(){

@Override
publicvoidonClick(DialogInterfacedialog,intwhich){

text.setText(datePicker.getYear()+"年"
+(datePicker.getMonth()+1)+"月"
+datePicker.getDayOfMonth()+"日");
}
})
.setNegativeButton("取消",newDialogInterface.OnClickListener(){

@Override
publicvoidonClick(DialogInterfacedialog,intwhich){
dialog.cancel();

}
}).create();

dialog.show();

}
}


自定义的dialog.xml代码如下【3.0版本之前】

[html]viewplain
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">

<DatePicker
android:id="@+id/datepicker"
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>

</LinearLayout>

【在3.0版本以后】

[java]viewplain
publicvoidonClick(Viewv){
switch(answer.type){
case1://日期类型

DatePickerDialogdialog=newDatePickerDialog(ctx,this,1980,0,
1);
DatePickerdatePicker=dialog.getDatePicker();
datePicker.setMinDate(DateUtils.getInstance().format("1970-01-01")
.getTime());
datePicker.setMaxDate(DateUtils.getInstance().format("2013-01-07")
.getTime());
dialog.show();
break;
}
}

@Override
publicvoidonDateSet(DatePickerview,intyear,intmonthOfYear,
intdayOfMonth){
editText.setText(year+"年"+(monthOfYear+1)+"月"+dayOfMonth
+"日");
}



如若满意,请点击右侧【采纳答案】,如若还有问题,请点击【追问】

希望我的回答对您有所帮助,望采纳!

~ O(∩_∩)O~

⑼ 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范围选择控件相关的资料

热点内容
手机内存压缩软件 浏览:33
生成树是否与遍历算法有关 浏览:727
python强化学习迷宫 浏览:449
老包子解压视频 浏览:885
服务器注册是什么意思 浏览:418
程序员群体焦虑如何破局 浏览:584
程序员在广州上班 浏览:802
androidlinuxadt 浏览:512
广联达软件加密锁原装芯片 浏览:338
如何打开数据库服务器 浏览:310
kppm是什么app 浏览:538
python多个数组命名 浏览:192
a算法csdn 浏览:23
r720服务器什么年代 浏览:975
本地电脑怎么设置传奇服务器 浏览:1002
安卓10框架怎么制作 浏览:959
程序员退休工资待遇 浏览:609
湛江中文编程数控系统代理 浏览:419
openglandroid书 浏览:170
奇妙组件安卓版叫什么 浏览:729