DigitalClock的替代者TextClock

DigitalClock在API 17(Android4.2)中就被官方定义为过时的方法,很奇怪为什么现在很多的网上的帖子都介绍DigitalClock方法的使用(已经过时),如果你想让自己的应用在高版本中进行使用的话,建议采用TextClock,为什么呢?下面简单介绍一下TextClock。

 

TextClock可以以字符串格式显示当前的日期和时间,这个控件推荐在24进制的android系统中使用,TextClock提供了两种不同的格式,一种是在24进制中显示时间和日期,另一种是在12进制中显示时间和日期。大部分人喜欢默认的设置。

怎样判断系统现在正在使用24进制的时间显示模式呢?可以通过调用TextClock提供的is24HourModeEnabled()方法来查看,比如:

TextClock tc=(TextClock)findViewById(R.id.tc);
if(tc.is24HourModeEnabled()){
Log.d("测试","24进制")
}

在24进制模式中:

1、如果没获取时间,首先通过getFormat24Hour()返回值;

2、获取失败则通过getFormat12Hour()获取返回值;

3、以上都获取失败则使用默认;

TextClock控件包含的XML属性:

1、继承自TextView的属性

2、继承自android.view.View属性

3、自有属性(android:format12Hour  android:format24Hour android:timeZone)

其中android:format12Hour对应TextClock的setFormat12Hour(CharSequence)方法,android:format24Hour对应setFormat24Hour(CharSequence)方法,android:timeZone对应setTimeZone(String)方法。

CharSequence在这不深入研究了,只做一个简单的简介,包含以下几种public方法:

charAt(int index)、length()、subSequence(int start,int end)、toString()。

看方法的名称应该就知道什么意思,一般讲CharSequence值设置为yyyy-MM-dd hh:mm ,即显示四位数年,两位数月,两位数日,和小时分钟。

注意是String类型。

 

下面回到正题,TextClock存在的Public方法是:

1、getFormat12Hour(),返回值CharSequence。在12进制模式中返回时间模式

2、getFormat24Hour(),返回值CharSequence。在24进制模式中返回时间模式

3、getTimeZone,返回值String。返回正在使用的时区。

4、is24HourModeEnabled(),返回值Boolean。检测系统当前是否使用24进制

5、setFormat12Hour(CharSequence format),无返回值。

6、setFormat12Hour(CharSequence format),无返回值。

7、setTimeZone(String timeZone),无返回值。

 

希望可以给大家提供参考。

 

 

时间: 2024-10-23 20:09:36

DigitalClock的替代者TextClock的相关文章

Android零基础入门第59节:AnalogClock、DigitalClock和TextClock时钟组件

原文:Android零基础入门第59节:AnalogClock.DigitalClock和TextClock时钟组件    在前面一期,我们学习了DatePicker和TimePicker,在实际开发中其不能完全满足我们对时间和日期的处理.     如果只是想要显示时间,而不需要用户修改,就可以使用DigitalClock和AnalogClock时钟组件,这2个组件非常有用,使用起来也非常简单,其值可以随时间自动更新.     一.AnalogClock       首先来一起学习AnalogC

android-Android:DigitalClock为什么不显示秒?

问题描述 Android:DigitalClock为什么不显示秒? 如图所示:数字时钟没有显示秒,但是Android教程说模拟时钟不显示秒,数字时钟是显示秒的 解决方案 你可以用TextClock,设置android:format12Hour="HH:mm:ss"或者format24Hour 解决方案二: DigitalClock貌似已经废弃了,还是用TextClock比较方便....

理解finalize()-析构函数替代者

函数 理解finalize()-析构函数替代者   在许多方面,Java 类似于 C++.Java 的语法非常类似于 C++,Java 有类.方法和数据成员:Java 的类有构造函数: Java 有异常处理.       但是,如果你使用过 C++ 会发现 Java 也丢掉一些可能是你熟悉的特性.这些特性之一就是析构函数.取代使用析构函数,Java 支持finalize() 方法.       在本文中,我们将描述 finalize() 与 C++ 析构函数的区别.另外,我们将创建一个简单的 A

struts2.0-在struts2中用什么替代<logic:notPresent>

问题描述 在struts2中用什么替代<logic:notPresent> <logic:notPresent name="class${classSingle.classId}"><li>aaaaaaa</li></logic:notPresent> 在struts2中用什么替代,主要是name="class${classSingle.classId}"这个怎么替换?求解?? 解决方案 logic:not

用户界面设计——用好的设计替代不好的

原文: User Interface Design – Taking the Good with the Bad 成功的婚姻之关键在于折衷.当事情沿着你不希望的方向发展,在最后,形成的争论却可以为你带来极大的好处.这条定理同样适用于用户界面设计.毕竟,如果婚姻不是形式和仪式又是什么呢? 设计用户界面的过程从根本上就是折衷的训练.这个训练并非指设计者和项目赌注者之间的折衷(可用性从来没被办公室政治利用过),而是指设计方案的倒退和前进之间的折衷.每一个有关用户界面的决定,从一像素的精确定位到整个网站

PHP中的替代语法

今天看了一下wordpress的代码,里面有些少见的php替代语法, <?php else : ?> <?php the_content( __( 'Continue reading →', 'thebox' ) ); ?> <?php wp_link_pages( array( 'before' => '' . __( 'Pages:', 'thebox' ), 'after' => '' ) ); ?> <?php endif; ?> els

Struts与Velocity集成 五个步骤替代JSP

js Struts Recipes 的合著者 George Franciscus 带您一步步地把 Velocity 模板引擎集成进 Struts 应用程序.结果是一个快速.灵活的 JSP 替代物,同时带有希望从 Struts 得到的所有方便. Java? 服务器页面(JSP)技术是如此普及,以至于人们忘记了在创建 Web 页面时还有其他选择.但是最近,有些开发人员已经转向模板引擎,以获得在 JSP 中得不到的灵活性.虽然用 JSP 和模板引擎都可以把数据嵌入 HTML,但是每种技术都有自己的处理

“百度盗版”是百度唯一不可替代的产品

老实说我已经对百度感到厌倦了,前所未有的厌倦.别的不用多说,身为一个如此之大的企业,百度文库公然盗版,丝毫没有以身作则的意思. 退一万步说,我不要求你以身作则,别人指出了你的错误(而且是明摆着的错误,丝毫没有争议性),你改正总要的吧?而百度没有,反而腆着脸说,大家都在盗版,为什么我不能掺和一下? 因为你是百度.你是自称"负责任的企业"的百度. 经此一事,你还是玩儿蛋去吧,讲这笑话给谁听呢. 更不用说搜索页面把百度百科/百度知道,硬生生地放到首页最醒目的位置还不要脸地声称那是机器算法排序

谁来替代Alexa

现在的问题是,被中国互联网站站长们"注水"过的Alexa排名,还能在多大程度上影响那些以精明.远识而出名的风险投资人?中国本土的流量排名公司又将驶向何方? 不知道从什么时候起,中国人开始喜欢上各式各样的排名,从富豪榜到慈善榜,人们始终热情洋溢.因为不管这个名次是为谁而排,总会有一番关于造假和作弊的口水争辩供人消遣. 门户网站关于Alexa排名的争论便是如此.几天来,Alexa在网站流量统计方法上的调整,致使某门户排名瞬间下落几十位,这也使得中国互联网的两大门户之间,爆发了一场关于流量排