Android开发技巧汇总(持续更新····)

下面是我在工作中和平时的学习中总结的一些Android开发技巧,共享给大家,与大家共同学习,共同进步嘛。。。。

 

1.获取手机屏幕大小

DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); //屏幕宽度 int widthPixels = dm.widthPixels; //屏幕高度 int heightPixels = dm.heightPixels;

 

2.使用外部ttf格式文件设置TextView字体,通过setTypeface设置字体

TextView.setTypeface(Typeface.createFromAsset(getAssets(), "fonts/ttf格式字体文件"));

注意:必须事先在项目的assets文件夹下创建fonts文件夹,并放入要使用的字体文件(ttf格式文件),还需要注意的是即便是用了不支持的字体,Android也不会报错,而是以Droid Sans默认字体代替。

 

3.如何求两个整数的百分比

int currentindex = 55; int totalcount = 66; NumberFormat nf = NumberFormat.getPercentInstance(); final String persent = nf.format(((float)currentindex/(float)totalcount));

 

4.Android单元测试的步骤

Step1:向AndroidManifest.xml文件添加以下标签元素

 <uses-library android:name="android.test.runner" />

 位于<application>元素体内

<instrumentation android:name="android.test.InstrumentationTestRunner" android:targetPackage="测试类包名" android:label="Tests for My App" />

与<application>元素并列 

Step2:新建单元测试类,必须继承AndroidTestCase,此外测试类中的测试方法需要以"test"+"待测试方法的名称"(比如testSendData测试的就是sendData方法)

Step3:方法要throws Throwable异常,Throwable是Exception的父类,单元测试框架捕获Throwable。

Step4:调用测试,在Outline面板或方法名上右键—Run AS—Android Junit Test。

Step5:查看打印信息,可以事先使用Log类中的方法来打印信息(用法参见Log图文详解(Log.v,Log.d,Log.i,Log.w,Log.e)的用法),打开 LogCat面板,在这个面板中我们可以看到Android输出的所有信息。

 

5.判断是否有SDCard存在并获取目录

File file = null; // 判断SDCard是否存在 String status = Environment.getExternalStorageState(); boolean isSDCardExist = status.equals(Environment.MEDIA_MOUNTED); //如果存在则获取SDCard目录 if(isSDCardExist){ file = Environment.getExternalStorageDirectory(); }

 

6.layout_gravity和gravity的区别

gravity 重心的意思,这里表示重心偏向。类似于Word中的左对齐,居中对齐,右对齐的概念。
android:gravity是对元件本身说的,表示元件本身所有的文本或图片在这个元件上的显示位置,默认是左对齐。
android:layout_gravity是相对于它的父元件来说,表示该元件显示在父元件的位置。
比如说Button,android:layout_gravity 表示按钮在界面上的位置;android:gravity表示Button上的文字在按钮上的位置。

你可能感兴趣的:(Android开发技巧汇总(持续更新····))