Android开发---从零搞起6

1、Android4.0系统中ProgressDialog设置为setCancelable(true)时,点击ProgressDialog以外的区域可以让ProgressDialog dismiss掉。如果将ProgressDialog设置setCancelable(false),再点击ProgressDialog以外的区域就不会出现前面所说的情况了,但这样会使返回键失去效果。
2、如何从SDCard中读取图片文件并将其设置为壁纸。
 程序步骤说明如下:

a、在SDCard中添加一个名称为wallpaper.jgp的图片文件。

b、创建Activity。

c、 在Activity的onCreate()方法中通过BitmapFactory的decodeFile()方法传递文件路径,获取Bitmap对象。

d、调用setWallpaper()方法设置桌面。

3、问:canvas.drawText("3", x, y, paint);  x和y是指画得时候数字3中心的坐标吗?还是左上角的坐标?
 答:x默认是‘3’这个字符的左边在屏幕的位置,如果设置了paint.setTextAlign(Paint.Align.CENTER);那就是字符的中心,y是指定这个字符baseline在屏幕上的位置。

4、在通过setTextSize()方法设置TextView的文字大小时,可以指定使用的单位,int型的常量TypedValue.COMPLEX_UNIT_PX表示单位是像素,如果要设置单位是磅,可以使用常量TypedValue.COMPLEX_UNIT_PT。
5、OnKeyListener是对手机键盘进行监听的接口,通过对某个View注册该监听,当View获得焦点并有键盘事件时,便会触发该接口中的回调方法。该接口中的抽象方法签名如下:

public boolean onKey(View v, int keyCode, KeyEvent event)

参数v:参数v为事件的事件源控件。

参数keyCode:参数keyCode为手机键盘的键盘码。

参数event:参数event便为键盘事件封装类的对象,其中包含了事件的详细信息,例如发生的事件、事件的类型等。
6、android:gravity="center_vertical|right"
edittext 文本垂直居中并且靠右显示

7、点击EditText不弹出软键盘
et.setInputType(InputType.TYPE_NULL);

8、IndexOf 方法
返回 String 对象内第一次出现子字符串的字符位置。

9、在实际工作中,常常需要设定数字的输出格式,如以百分比的形式输出,或者设定小数位数等,现稍微总结如下。

  主要使用的类:java.text.DecimalFormat

  a、实例化对象,可以用如下两种方法:

  DecimalFormat df=(DecimalFormat)NumberFormat.getInstance();

  DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();

  因为DecimalFormat继承自NumberFormat。

  b、设定小数位数

  系统默认小数位数为3,如:

  DecimalFormat df=(DecimalFormat)NumberFormat.getInstance();

  System.out.println(df.format(12.3456789));

  输出:12.346

  现在可以通过如下方法把小数为设为两位:

  df.setMaximumFractionDigits(2);

  System.out.println(df.format(12.3456789));

  则输出为:12.35

  c、将数字转化为百分比输出,有如下两种方法:

  (1)df.applyPattern("##.##%");

  System.out.println(df.format(12.3456789));

  System.out.println(df.format(1));

  System.out.println(df.format(0.015));

  输出分别为:1234.57%  100%    1.5%

  (2)df.setMaximumFractionDigits(2);

  System.out.println(df.format(12.3456789*100)+"%");

  System.out.println(df.format(1*100)+"%");

  System.out.println(df.format(0.015*100)+"%");

  输出分别为:

  1,234.57%   100%   1.5%

  d、设置分组大小

  DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();

  df1.setGroupingSize(2);

  System.out.println(df1.format(123456789));

  输出:1,23,45,67,89

  还可以通过df1.setGroupingUsed(false);来禁用分组设置,如:

  DecimalFormat df1=(DecimalFormat) DecimalFormat.getInstance();

  df1.setGroupingSize(2);

  df1.setGroupingUsed(false);

  System.out.println(df1.format(123456789));

  输出:123456789

  e、设置小数为必须为2位

  DecimalFormat df2=(DecimalFormat) DecimalFormat.getInstance();

  df2.applyPattern("0.00");

  System.out.println(df2.format(1.2));

  输出:1.20

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值