- 浏览: 385474 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (269)
- FY_UML (3)
- FY_JAVA (12)
- FY_JavaScript脚本 (7)
- FY_JSP (3)
- FY_Tapestry框架 (12)
- FY_Spring框架 (3)
- FY_Manager (5)
- FY_Junit(单元测试) (3)
- SERVER (14)
- FY_Struts2框架 (3)
- FY_SVN (2)
- FY_NoSQL (2)
- FY_jquery_sir (13)
- FY_hibernate_sir (8)
- FY_设计模式_sir (6)
- FY_Extjs_sir (10)
- FY_CI_sir (5)
- FY_Oracle_sir (11)
- FY_MySql_sir (10)
- FY_Hadoop_sir (3)
- FY_SOA_sir (1)
- 中文分词技术 (1)
- FY_Android (52)
- FY_架构 (2)
- FY_PhoneGap (2)
- FY_Webstorm (5)
- FY_Sencha Touch (3)
- HTML5应用快速开发 (1)
- FY_python (0)
- HADOOP (1)
- AI (0)
最新评论
-
antao592:
楼主,HkDataSourceWrapper中的getCurr ...
结合spring jdbc 实现分表分库的数据库访问构思 -
bonait:
不错,看看我的这个怎么样www.zipin168.com
So Easy京东商城 -
chenzheng8975:
...
So Easy京东商城 -
yzhenxing:
我导入demo后少com.google.android.gms ...
google地图demo -
echoaiya:
非常感谢~~
google地图demo
--------------------------------------------CallUp.java-------------------------------------
package com.ch07.callback;
/**
*
* 项目名称:com.ch07.callback
* 类名称:CallUp
* 类描述: 打电话类
* 创建人:fy
* 创建时间:2012-11-9 下午6:28:38
* Copyright (c) 方勇-版权所有
*/
public class CallUp {
/* 打电话,回调方法 */
public void callme(OnCallBack onCallBack) {
onCallBack.execute();
}
/* 接口作为参数传递 */
public interface OnCallBack {
void execute();
}
}
--------------------------------------------TestCall.java-------------------------------------
package com.ch07.callback;
/**
*
* 场景描述:
*
* java回调函数
* 什么是回调?(What)
* 精妙比喻:我把手机号码给你,你通过手机号码联系我
* 具体解释:
* 我把我的手机号码给你,你通过电话号码打电话 联系我
* 我把我的手机号码给你,你通过电话号码发短信 联系我
* 共同的部分:
* 我把我的手机号码给你,你通过电话号码(****)联系我
* 不同的部分
* 每次在使用的时候,选择是打电话或是发短信。
* 回调都做了什么?
* 将变动与不变的代码分离,变动的代码在每次使用时确认
* 什么情况使用回调?为什么要使用回调?
* 步骤固定,但有一部分内容只有在使用的时候才能知道。
*
*/
public class TestCall {
public static void main(String[] args) {
/* 实例化电话类 */
CallUp callUp = new CallUp();
/* 拨打对方的电话,只需要知道对方的手机号码 */
callUp.callme(new CallUp.OnCallBack() {
@Override
public void execute() {
System.out.println("回调方法");
}
});
}
}
--------------------------------------------DatePickerDialog.java---------------------------------
/*
* Copyright (C) 2007 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.app;
import android.content.Context;
import android.content.DialogInterface;
import android.content.DialogInterface.OnClickListener;
import android.os.Bundle;
import android.text.format.DateUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.DatePicker;
import android.widget.DatePicker.OnDateChangedListener;
import com.android.internal.R;
import java.util.Calendar;
/**
* A simple dialog containing an {@link android.widget.DatePicker}.
*
* <p>See the <a href="{@docRoot}resources/tutorials/views/hello-datepicker.html">Date Picker
* tutorial</a>.</p>
*/
public class DatePickerDialog extends AlertDialog implements OnClickListener,
OnDateChangedListener {
private static final String YEAR = "year";
private static final String MONTH = "month";
private static final String DAY = "day";
private final DatePicker mDatePicker;
private final OnDateSetListener mCallBack;
private final Calendar mCalendar;
private boolean mTitleNeedsUpdate = true;
/**
* The callback used to indicate the user is done filling in the date.
*/
public interface OnDateSetListener {
/**
* @param view The view associated with this listener.
* @param year The year that was set.
* @param monthOfYear The month that was set (0-11) for compatibility
* with {@link java.util.Calendar}.
* @param dayOfMonth The day of the month that was set.
*/
void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth);
}
/**
* @param context The context the dialog is to run in.
* @param callBack How the parent is notified that the date is set.
* @param year The initial year of the dialog.
* @param monthOfYear The initial month of the dialog.
* @param dayOfMonth The initial day of the dialog.
*/
public DatePickerDialog(Context context,
OnDateSetListener callBack,
int year,
int monthOfYear,
int dayOfMonth) {
this(context, 0, callBack, year, monthOfYear, dayOfMonth);
}
/**
* @param context The context the dialog is to run in.
* @param theme the theme to apply to this dialog
* @param callBack How the parent is notified that the date is set.
* @param year The initial year of the dialog.
* @param monthOfYear The initial month of the dialog.
* @param dayOfMonth The initial day of the dialog.
*/
public DatePickerDialog(Context context,
int theme,
OnDateSetListener callBack,
int year,
int monthOfYear,
int dayOfMonth) {
super(context, theme);
mCallBack = callBack;
mCalendar = Calendar.getInstance();
Context themeContext = getContext();
setButton(BUTTON_POSITIVE, themeContext.getText(R.string.date_time_done), this);
setIcon(0);
LayoutInflater inflater =
(LayoutInflater) themeContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View view = inflater.inflate(R.layout.date_picker_dialog, null);
setView(view);
mDatePicker = (DatePicker) view.findViewById(R.id.datePicker);
mDatePicker.init(year, monthOfYear, dayOfMonth, this);
updateTitle(year, monthOfYear, dayOfMonth);
}
public void onClick(DialogInterface dialog, int which) {
tryNotifyDateSet();
}
public void onDateChanged(DatePicker view, int year,
int month, int day) {
mDatePicker.init(year, month, day, this);
updateTitle(year, month, day);
}
/**
* Gets the {@link DatePicker} contained in this dialog.
*
* @return The calendar view.
*/
public DatePicker getDatePicker() {
return mDatePicker;
}
/**
* Sets the current date.
*
* @param year The date year.
* @param monthOfYear The date month.
* @param dayOfMonth The date day of month.
*/
public void updateDate(int year, int monthOfYear, int dayOfMonth) {
mDatePicker.updateDate(year, monthOfYear, dayOfMonth);
}
private void tryNotifyDateSet() {
if (mCallBack != null) {
mDatePicker.clearFocus();
mCallBack.onDateSet(mDatePicker, mDatePicker.getYear(),
mDatePicker.getMonth(), mDatePicker.getDayOfMonth());
}
}
@Override
protected void onStop() {
tryNotifyDateSet();
super.onStop();
}
private void updateTitle(int year, int month, int day) {
if (!mDatePicker.getCalendarViewShown()) {
mCalendar.set(Calendar.YEAR, year);
mCalendar.set(Calendar.MONTH, month);
mCalendar.set(Calendar.DAY_OF_MONTH, day);
String title = DateUtils.formatDateTime(mContext,
mCalendar.getTimeInMillis(),
DateUtils.FORMAT_SHOW_DATE
| DateUtils.FORMAT_SHOW_WEEKDAY
| DateUtils.FORMAT_SHOW_YEAR
| DateUtils.FORMAT_ABBREV_MONTH
| DateUtils.FORMAT_ABBREV_WEEKDAY);
setTitle(title);
mTitleNeedsUpdate = true;
} else {
if (mTitleNeedsUpdate) {
mTitleNeedsUpdate = false;
setTitle(R.string.date_picker_dialog_title);
}
}
}
@Override
public Bundle onSaveInstanceState() {
Bundle state = super.onSaveInstanceState();
state.putInt(YEAR, mDatePicker.getYear());
state.putInt(MONTH, mDatePicker.getMonth());
state.putInt(DAY, mDatePicker.getDayOfMonth());
return state;
}
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
int year = savedInstanceState.getInt(YEAR);
int month = savedInstanceState.getInt(MONTH);
int day = savedInstanceState.getInt(DAY);
mDatePicker.init(year, month, day, this);
}
}
<!--EndFragment-->
- com.ch07.callback.rar (4.4 KB)
- 下载次数: 15
发表评论
-
史上最快 Android N(安卓7.0)运行效率暴增至600%
2016-10-15 10:08 928谷歌I/O 2016开发者大会在公司总部正式拉开 ... -
So Easy京东商城
2014-12-10 16:51 1578So Easy京东商城 我和17位小伙伴们 ... -
过期Gallery取代方案horizontalscrollView之菜单导航效果
2014-03-23 16:19 2415效果 ------------------------- ... -
过期Gallery取代方案horizontalscrollView之京东效果
2014-03-23 15:57 3881效果 ------------------------- ... -
过期Gallery取代方案horizontalscrollView之幻灯片效果
2014-03-21 17:33 2622效果 ------------------------- ... -
tabhostandbadgeview
2014-03-19 13:45 1034效果 -------------------------- ... -
Android优秀开源项目大全
2014-03-18 15:17 1984以下是开源项目 1、and ... -
Android分页控件xlistview
2014-03-18 14:51 1673strings.xml ----------------- ... -
过期Gallery取代方案horizontalscrollView之普通画廊
2014-03-17 22:48 2444activity_main.xml ---------- ... -
viewpage
2014-03-17 18:08 1059strings.xml ----------------- ... -
FragmentStatePagerAdapter分页
2014-03-17 17:27 806ViewPager ViewPager 如 ... -
FragmentPagerAdapter与FragmentStatePagerAdapter差异
2014-03-17 17:20 1317简介 平常使用的FragmentPagerAdapter和F ... -
抽屉菜单
2014-03-16 12:51 1845strings.xml ----------------- ... -
px和dip以及sp的区别
2014-03-08 17:01 718显示单位px和dip以及sp的区别 dip: devi ... -
fragment生命周期
2014-03-06 16:59 890Fragment必须被写成可重用的模块。因为fragmen ... -
过期API_AlertDialog
2014-03-02 10:07 1151layout----------------------- ... -
Android_Jni 操作指南
2014-01-10 14:45 949Android_Jni 操作指南 NDK(Nati ... -
各种各样圆形进度条
2013-11-11 16:30 563http://www.apkbus.com/android-1 ... -
红杏出墙__实训版
2013-04-20 18:59 1083红杏出墙__实训版 -
google地图demo
2013-04-09 14:25 3203---------------------------- ...
相关推荐
它们提供了回调机制,以便在用户更改选择时更新数据。 在处理日期和时间时,通常会用到`java.util.Calendar`和`java.time`(在Android API 26及以上版本)包中的类。`Calendar`类提供了日期和时间的抽象表示,而`...
本章"ch07_android开发_"将深入探讨ListView的使用,从基础到高级技巧,帮助开发者掌握这一核心功能。 1. **ListView基本使用**:ListView是Android中用于显示可滚动列表的视图,通常用于显示大量数据。它通过...
标题"ch07_android开发_源码.zip"表明这是一个关于Android开发的源码学习资料,可能包含了某个特定章节或主题的内容,例如第七章的学习资源。虽然没有具体的标签,但我们可以从文件名推测这可能是某个教程或书籍的...
《Android OPhone开发完全讲义源码Ch07》是一份深入探讨Android OPhone平台开发的教程资料,其中包含了第七章的源代码。这一章节很可能着重讲解了Android系统在OPhone定制版本上的应用开发和系统集成。OPhone是基于...
数据库ch07数据库ch07
源码ch07-09涵盖了书中第七章到第九章的内容,这些章节通常会涉及Android应用开发中的核心概念和技术。 第七章通常会讲解Android的UI设计与实现,包括布局管理器如LinearLayout、RelativeLayout、GridLayout等,...
布尔表达式、真值表、卡诺图等是分析和化简逻辑函数的常用方法。 3. **复合门电路**:如三态门(Tri-state gate)、OC门(Open Collector)和OD门(Open Drain),这些门电路在多路复用和数据总线控制中有重要应用...
《Android SDK开发范例大全(第二版)CH07_1.rar》是一个包含多个示例项目的压缩包,这些示例项目主要围绕Android SDK的第七章内容展开,旨在帮助开发者深入理解并掌握Android应用开发的关键技术。这个压缩包中的每一...
《Android SDK开发范例大全(第二版)CH07_2.rar》是一个包含多个示例项目的压缩包,主要聚焦于Android应用开发中的特定章节——可能是第七章的第二部分。从提供的压缩包子文件名称来看,我们可以推测这些项目是针对...
标题"ch07 整数规划.rar_ch07_整数规划"表明这是一个关于整数规划的压缩包文件,可能包含第七章的学习材料或教程,如PDF文档、课件或习题解答,用于深入理解和掌握整数规划的概念和方法。 描述中的"整数规划是指...
标题中的“信息系统软件设计(C#.NET版)CH07代码”揭示了这是一个关于C#.NET编程语言在构建信息系统中的具体应用,特别是集中在第7章的内容。C#.NET是由微软开发的一种面向对象的编程语言,它被广泛用于开发Web应用...
ch07运行环境.pptx
Ch07 产品策略.pptx
ch07 词法分析.pptx
系统原理框图显示,输入信号经过处理后产生输出,而输出信号的一部分被反馈回输入端,通过比较器与参考信号进行比较。如果发现偏差,就会产生误差电压,这个误差电压用来控制可控设备调整输出,从而使输入和输出之间...
在Android应用开发的世界里,Android Studio是首选的集成开发环境(IDE),它为开发者提供了高效且功能丰富的工具,使得创建Android应用程序变得简单易行。本资料包“Android APP开发入门:使用Android Studio环境 ...
`ProAndroid4_Ch07_TestMenus.zip` 集中在菜单设计。Android应用的菜单可以出现在选项卡、Action Bar或者弹出式窗口中,这部分源码会演示如何创建和响应菜单事件,以及如何利用菜单实现多层次的交互。 `ProAndroid4...
【标题】"ch07_ibatisDemo.rar" 涉及的是关于MyBatis框架的实战演示,这个压缩包...通过分析这个压缩包,学习者可以深入理解MyBatis的配置、使用方法,以及如何在实际项目中整合和测试MyBatis,提升数据库操作的效率。
通过对这些源码的分析和学习,开发者可以掌握Android SDK的各种功能和API的使用方法,提升开发技能。 源码2.rar包含的文件主要分为四个部分,对应书中的四个章节: 1. **CH08**:这一章节可能涉及的是Android的...
章节七(Ch07)通常会涵盖以下关键知识点: 1. **图层管理**:图层是Photoshop的核心概念,用于组织和编辑图像的不同部分。Ch07可能会介绍如何创建、隐藏、调整顺序、合并以及使用图层蒙版和调整图层。 2. **选择...