dpi是什么呢? dpi是“dot per inch”的缩写,每英寸像素数。 四种密度分类: ldpi (low), mdpi (medium), hdpi (high), and xhdpi (extra high) 一般情况下的普通屏幕:ldpi是120,mdpi是160,hdpi是240,xhdpi是320。dpi计算公式 DPI=对角线的像素值/尺寸手机屏幕分辨率和屏幕密度是两码事!并不是800*480的分辨率手机图片就应该放在hdpi文件夹中。5.0英寸 800*480属于mdpi也可以通过代码获取:DisplayMetrics metric = new Displ...
第四章 Android开发组件2列表类组件(1)ListView组件:以垂直列表的形式列出需要显示的列表项相关属性:a. android:divider 用于为列表视图设置分隔条,可以用颜色或者图片资源b. android:dividerHeight 设置分隔条的高度c. android:entries 通过数组资源为ListView指定列表项d. android:footerDividersEnabled 设置是否在footerView之前绘制分隔条,默认为true。e. android:headerDividersEnabled 设置是否在headerView之后...
1.格式化价格,这个经常在计算费用精度的时候用到/*** 格式化价格* * @param argStr 传入价格字符串* @return*/publicstatic String getFloatDotStr(String argStr) {float arg = Float.valueOf(argStr);DecimalFormat fnum = new DecimalFormat("##0.00");return fnum.format(arg);}2.获取App的版本号Version// 得到versionCodepublicstaticint getVerCode(Context context) {int verCode = 0;try {verCode = context.getPackageM...
此篇博客通过模拟连接MyEclipse搭建的服务器下载图片,实现在实际开发中的场景运用。MainActivity的代码package com.example.e13_listview3;import java.util.HashMap; import java.util.List;import android.os.AsyncTask; import android.os.Bundle; import android.app.Activity; import android.app.ProgressDialog; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.util.Log; import...
添加圆角 添加圆角的功能,要用到Canvas类的drawRoundRect方法,即把画布裁剪成指定的圆角矩形。 下面是给图片添加圆角的效果截图: 下面是给图片添加圆角的代码片段: public static Bitmap getRoundImage(Bitmap bitmap, int roundPixels) {//创建一个和原始图片一样大小位图Bitmap roundConcerImage = Bitmap.createBitmap(bitmap.getWidth(),bitmap.getHeight(), Config.ARGB_8888);//创建带有位图roundConcerImage的画布Canva...
合抱之木,生於毫末;九層之台,起於累土;千里之行,始於足下。《老子》今天在社区看到有朋友问“如何在半年内成为顶级架构师”,有网友道“关灯睡觉,不用半年的...”,的确,做梦还来的快一些。作为一个程序员,树立远大的目标是值得欣赏的,但不能只去空想,要一步一步地实践才行。成大事者,须从小事做起;万事起于忽微,量变引起质变。我们今天要讲的是Activity的四种launchMode。launchMode在多个Activity跳转的过程中扮演着...
前面,我们已经了解了怎么在android app上打开关闭和扫描,搜索wifi,现在,我来写一下怎么通过连接wifi来使app获取到IPCamera摄像头的视频。一、通过URL获取视频的地址二、创建输入流三、解析图片 首先,我是通过抓包软件来抓取IPCamera摄像头的视频流,然后将其分包解析为一张一张的图片,再将其显示在界面上。由于我抓到的有GET /videostream.cgi?rate=0 HTTP/1.1 这样的字眼,所以可以知道,我所使用的是HTTP协议的摄像头。然后...
在使用ubuntu64位(14.04)时,下载来一个adt-bundle-linux-x86_64-20131030.zip,但是运行时报错:Android: Gradle: Execution failed for task Cannot run program android-studio/sdk/build-tools/android-4.2.2/aapt error=2, 没有那个文件或目录 使用aapt编译资源时报错, 提示找不到aapt这个命令, 可是在sdk中命名存在这个可执行文件。最后在网上搜索原因, 找到了答案: 使用的系统是64位的, 而adt-bundle-linux-x86_64-...
欢迎Follow我的GitHub, 关注我的CSDN.我会介绍关于Android的一些有趣的小知识点. 上一篇.1. Dagger2的开发顺序Module -> Component -> Application 首先模块(Module)创建需要提供的类实例, 其次把模块添加到组件(Component)中并提供需要注入的类, 最后把组件添加到应用(Application)中并提供接口.// 模块@ModulepublicclassTestAppModule {privatefinal Context mContext;publicTestAppModule(Context context) {mContext = conte...
问题:一个product flavor不够,你需要另一个标准去区分不同版本的app解决方案:在product flavor中增加flavorDimensions讨论:在3.2章展示了一个有三个product flavor的app(arrogant,friendly,obsequious)。这几个flavor是基于态度区分。然后不同的客户希望app有他们自己的烙印。代码大体上都是一样的。只有很小的一部分不一样。为了防止大量的赋值黏贴,介绍下额外的flavor dimension。build file如下:flavorDimensions ‘att...
项目开发的过程中,可能会大量的使用全局变量,在android开发中,大多数人更偏向于使用application来保存全局变量。那么我们就先来了解下在android中,application究竟是什么?有什么作用? Application类是用来维护应用程序全局状态。我们可以提供自己的实现,并在AndroidManifest.xml文件的<application>标签中指出它的名字,这将导致在创建应用程序时去实例化我们自己的Application类。Android系统会为每个程序运行时创建一个...
首先需要说明下,这里说的sdcard的权限并不是指在Android application程序中设置sdcard的权限读取问题。而是指在DDMS看到的目录下的那个sdcard目录的权限问题。 有时候,当你想在sdcard目录下面导入某个文件时,突然发现sdcard目录没有权限,它的权限状态为(d-------即000)。这时候我们需要做的事:1.如果你没有配置好adb运行环境,在环境配置的path下面将android-sdk-windows\platform-tools路劲添加到最后(adb.exe在这下...
Adapter的作用:数据在adapter中做了处理之后,显示在视图上一般的对于ArrayAdapter来说,只需要把一个数组和一个样式传递给ArrayAdapter之后就可以在视图上用一个列表显示出这个字符串数组。例如下边的代码:listView.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,ls)); 但是,比如我们手机的联系人目录所示,不仅仅是有列表,而且有头像,可能还有手机号码。所以,单纯的ArrayAdapter是不能够...
新手程序猿,在开发中难免会犯各种各样的错误,以下是整理的一些android开发中常见的错误,一起来看看吧。1.避免将多个类放在一个文件夹里面,除非是一次性使用的内部类。就是一个文件,最好给分它同名的主类。 2.一个方法的代码长度最好不要超过35行就是我们这个方法,别把它写的太长, 像是翻了几行的方法,要么拆分成几个方法,把里面很多公用的方法拿出来放在另外一个函数里,要不重构。 3.原则上,尽量不要手工的修改机器产生...
学习了Activity组件后,这里再学习下另一个组件Broadcast Receiver组件。这里学习下自定义的Broadcast Receiver。通过按键自己发送广播,然后自己接收广播。新建MyBroadcastReceiver,代码如下:package com.example.jared.broadcasttest;import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.widget.Toast;/*** Created by jared on 16/2/12.*/ public cla...