Android学习笔记9:常见控件(2)
来源:互联网 发布:华邦地产网络办公平台 编辑:程序博客网 时间:2024/05/31 11:04
1. DatePicker和TimePicker
使用方法 :
先得到系统时间和日期 ;
Calendar calendar=Calendar.getInstance();
int year=calendar.get(Calendar.YEAR);
int monthOfYear=calendar.get(Calendar.MONTH);
int dayOfMonth=calendar.get(Calendar.DAY_OF_MONTH);
然后为DatePicker绑定监听器,初始化日期,并且得到用户进行的修改操作 :
//这个方法让datePicker不显示日历:
datePicker.setCalendarViewShown(false);
datePicker.init(year, monthOfYear, dayOfMonth,new OnDateChangedListener(){
publicvoid onDateChanged(DatePicker view,int year,
int monthOfYear,int dayOfMonth) {
// 要进行的操作,比如将修改后的日期显示出来
}
});
为TimePicker绑定监听器 :
timePicker.setOnTimeChangedListener(new OnTimeChangedListener(){
publicvoid onTimeChanged(TimePicker view,int hourOfDay,int minute) {
timeEt.setText("您选择的时间是:"+hourOfDay+"时"+minute+"分。");
}
});
2.对话框 AlertDialog 和ProgressDialog
1> 最简单的AlertDialog 的创建
AlertDialog.Builder builder = new Builder(Activity01.this);
builder.setTitle("提示");
builder.setMessage("请登录");
builder.create(); 创建
builder.show(); 显示
设置两个按钮 builder.setPositiveButton("确定", new DialogInterface.OnClickListener()
builder.setNegativeButton("取消", new DialogInterface.OnClickListener()
2> 自定义AlertDialog 的创建
AlertDialog.Builder builder = new Builder(Activity01.this);
LayoutInflater factory = LayoutInflater.from(Activity01.this);
final View DialogView = factory.inflate(R.layout.test, null); // 自定义布局文件
builder.setView(DialogView); // 加载自定义的布局
3>ProgressDialog 显示一个转圈的Dialog
- mProgressDialog = new ProgressDialog(this);
- mProgressDialog.setTitle("读取ing");
- mProgressDialog.setMessage("正在读取中请稍候");
- mProgressDialog.setIndeterminate(true);
- mProgressDialog.setCancelable(true);
- mProgressDialog.show();
3. 切换图片 ImageSwitcher
1> 先定义布局文件
<ImageSwitcher
android:id="@+id/img"
android:layout_width="match_parent"
android:layout_height="wrap_content"
/>
2> imgSwitcher = (ImageSwitcher)findViewById(R.id.img);
imgSwitcher.setFactory(this);
// List是装有图片的Int 数组
imgSwitcher.setImageResource(list[index]);
//设置切入动画
imgSwitcher.setInAnimation(AnimationUtils.loadAnimation(getApplicationContext(),
android.R.anim.slide_in_left));
// 设置切出动画
imgSwitcher.setOutAnimation(AnimationUtils.loadAnimation(
getApplicationContext(), android.R.anim.slide_out_right));
4. GridView
1> 先写GridView 的布局文件,定义整个GridView
- <GridView
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:id="@+id/gridview"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:columnWidth="90dp"
- android:numColumns="auto_fit"
- android:horizontalSpacing="10dp"
- android:verticalSpacing="10dp"
- android:stretchMode="columnWidth"
- android:gravity="center">
- </GridView>
2>
- GridView gridView=(GridView)findViewById(R.id.gridview);
- gridView.setAdapter(new ImageAdapter(this));
- private class ImageAdapter extends BaseAdapter{
- private Context mContext;
- public ImageAdapter(Context context) {
- this.mContext=context;
- }
- @Override
- public int getCount() {
- return mThumbIds.length;
- }
- @Override
- public Object getItem(int position) {
- return mThumbIds[position];
- }
- @Override
- public long getItemId(int position) {
- // TODO Auto-generated method stub
- return 0;
- }
- @Override
- public View getView(int position, View convertView, ViewGroup parent) {
- //定义一个ImageView,显示在GridView里
- ImageView imageView;
- if(convertView==null){
- imageView=new ImageView(mContext);
- imageView.setLayoutParams(new GridView.LayoutParams(85, 85));
- imageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
- imageView.setPadding(8, 8, 8, 8);
- }else{
- imageView = (ImageView) convertView;
- }
- imageView.setImageResource(mThumbIds[position]);
- return imageView;
- }
public void onProgressChanged(SeekBar seekBar, int progress,
boolean fromUser) {
text1.setText("当前值" + progress);
}
public void onStartTrackingTouch(SeekBar seekBar) {
text2.setText("正在调节");
}
public void onStopTrackingTouch(SeekBar seekBar) {
text2.setText("停止调节");
}
});
6. 进度条对话框ProgressDialog
用法 ; / /创建ProgressDialog对象
ProgressDialog m_pDialog = new ProgressDialog(Activity01.this);
// 设置进度条风格,风格为圆形,旋转的
m_pDialog.setProgressStyle(ProgressDialog.STYLE_SPINNER);
// 设置ProgressDialog 标题
m_pDialog.setTitle("提示");
// 设置ProgressDialog 提示信息
m_pDialog.setMessage("这是一个圆形进度条对话框");
// 设置ProgressDialog 标题图标
m_pDialog.setIcon(R.drawable.img1);
// 设置ProgressDialog 的进度条是否不明确
m_pDialog.setIndeterminate(false);
// 设置ProgressDialog 是否可以按退回按键取消
m_pDialog.setCancelable(true);
// 设置ProgressDialog 的一个Button
m_pDialog.setButton("确定", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int i)
{
//点击“确定按钮”取消对话框
dialog.cancel();
}
});
// 让ProgressDialog显示
m_pDialog.show();
- Android学习笔记9:常见控件(2)
- Android学习笔记·常见控件TextView
- Android入门学习笔记(六):Android中的常见控件
- android 学习9—— Android常见控件(二)
- MFC学习笔记之常见控件
- Android 学习笔记9:高级控件
- Android学习整理-常见控件调用方法
- android学习第三天常见UI控件
- Android学习笔记 - 控件篇
- Android学习笔记 - 控件篇
- Android Spinner控件学习笔记
- 【学习笔记】Android自定义控件
- android 学习笔记-基本控件
- 【android控件学习笔记】ListView
- android自定义控件学习笔记
- android 控件学习笔记 --------ViewPager
- Android学习笔记-常用控件
- Android 自定义控件学习笔记
- 读《暗时间》
- windows PE结构解析
- overlapped模型
- ICE专题:使用C#编写ICE分布式应用程序
- vim程序编辑器
- Android学习笔记9:常见控件(2)
- ios 打开文档的选择续
- 让你的程序像系统命令一样运行
- ICE专题:在客户端中如何定位服务器(即如何寻找代理)
- 获得document的iframe时有两种方法
- 顺序表
- linux下的Telnet服务
- ICE专题:ICE在Linux下的安装
- Ubuntu下安装ICE