`
文章列表
通常我们使用的ViewPager实现的左右滑动无法循环滚动,当到达头或尾时,不能继续重头开始,上网搜集了一些资料,找到CycleViewPager可以实现左右循环滚动,实现也比较简单,直接贴代码: 主文件: package com.vane.widget.test; import com.example.cycleviewpager.R; import com.vane.widget.cycleviewpager.CycleViewPager; import android.app.Activity; import android.os.Bundle; import andr ...
BlueTooth 根据官方DOC翻译 (本人英语4级没过,看不懂请自行脑补)   Bluetooth API操作流程: 搜索其他蓝牙设备 查询本地匹配器已经匹配的蓝牙设备 建立RFCOMM通道 通过Service发现并连接其他设备 与其他蓝牙设备进行数据交互
一:创建线程     1.通过Thread类的构造方法创建。 Thread thread = new Thread(new Runnable() { @Override public void run() { // do something; } });     2.通过实现Runnable接口创建。   public class PageActivity11 extends Activity implements Runnable{ @Override protected void onCreate(Bundle savedInstan ...
public class DrawableTool { /** * Drawable转化为Bitmap * * @param drawable * @return Bitmap */ public static Bitmap drawableToBitmap(Drawable drawable) { // 取 drawable 的长宽 int w = drawable.getIntrinsicWidth(); int h = drawable.getIntrinsicHeight(); // 取 drawable 的颜色格 ...
public class BitmapTool { /** * 获得圆角图片 * * @param bitmap * @param roundPx * 圆角参数 * @return 圆角图片 */ public static Bitmap getRoundedCornerBitmap(Bitmap bitmap, float roundPx) { int w = bitmap.getWidth(); int h = bitmap.getHeight(); Bitmap output = Bitmap ...
       在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到低依次为:强引用、软引用、弱引用和虚引用。在java.lang.ref包中提供了几个类:SoftReference类、WeakReference类和PhantomReference类,它们分别代表软引用、弱引用和虚引用。ReferenceQueue类表示引用队列,它可以和这三种引用类联合使用,以便跟踪Java虚拟 ...
  通过软引用实现图片缓存   public class BitmapCache { static private BitmapCache mCache; /** * 用于Chche内容的存储 */ private Hashtable<Integer, MySoftRef> mHashRefs; /** 垃圾Reference的队列(所引用的对象已经被回收,则将该引用存入队列中) */ private ReferenceQueue<Bitmap> mReferenceQueue; /** * 继承SoftR ...
Android's drawables对编写程序是非常有用的。A Drawable通常是一个与view相关的插件后的画图容器。例如。一个aBitmapDrawable是用来显示图片的,a ShapeDrawable 是用来画图和渐变的等等。你甚至可以通过它还创建负责的渲染。   Drawables允许你不需要继承就可以很容易的定制widgets渲染。事实是,Android的应用程序和widgets 是使用该drawables对象的,在android的核心框架中大约有700个drawables被使用。正式以为他是如此广泛的被使用,Android对它进行了优化。例如,每一次你创建一个按钮时, ...
(1)基本原则:如果要操作少量的数据,用String ;单线程操作大量数据,用StringBuilder ;多线程操作大量数据,用StringBuffer。 (2)不要使用String类的"+"来进行频繁的拼接,因为那样的性能极差的,应该使用StringBuffer或StringBuilder类,这在Java的优化上是一条比较重要的原则。 (3)为了获得更好的性能,在构造 StirngBuffer 或 StirngBuilder 时应尽可能指定它们的容量。当然,如果你操作的字符串长度(length)不超过 16 个字符就不用了,当不指定容量(capacity)时默认构造 ...
问题描述:Android如何调用第三方SO库;已知条件:SO库为Android版本连接库(*.so文件),并提供了详细的接口说明;已了解解决方案:1.将SO文件直接放到libs/armeabi下,然后代码中System.loadLibrary("xxx");再public native static in ...
ImageView.ScaleType / android:scaleType值的意义区别: CENTER /center  按图片的原来size居中显示,当图片长/宽超过View的长/宽,则截取图片的居中部分显示 CENTER_CROP / centerCrop  按比例扩大图片的size居中显示,使得图片长(宽)等于或大于View的长(宽) CENTER_INSIDE / centerInside  将图片的内容完整居中显示,通过按比例缩小或原来的size使得图片长/宽等于或小于View的长/宽 FIT_CENTER / fitCenter  把图片按比例扩大/缩小到View的宽度 ...
centerInside表示按比例缩放图片,使得图片长 (宽)的小于等于视图的相应维度。 注意:控制的图片为资源而不是背景,即android:src="@drawable/logo",而非android:background="@drawable/logo"   附:更详细的scaleType说明: androi ...
在Android应用里,最耗费内存的就是图片资源。而且在Android系统中,读取位图Bitmap时,分给虚拟机中的图片的堆栈大小只有8M,如果超出了,就会出现OutOfMemory异常。所以,对于图片的内存优化,是Android应用开发中比较重要的内容。   1) 要及时回收Bitmap的内存 Bitmap类有一个方法recycle(),从方法名可以看出意思是回收。这里就有疑问了,Android系统有自己的垃圾回收机制,可以不定期的回收掉不使用的内存空间,当然也包括Bitmap的空间。那为什么还需要这个方法呢?Bitmap类的构造方法都是私有的,所以开发者不能直接new出一个Bitm ...
    /**获取参数(ArrayList<NameValuePair> nameValuePairs,String url)后 * post给远程服务器 * 将获得的返回结果(String)返回给调用者 * 本函数适用于查询数量较少的时候 * Chen.Zhidong * 2011-02-15 */ public String posturl(ArrayList<NameValuePair> nameValuePairs,String url){ String result = "&qu ...
import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; /** * * @author Andy.Chen * @mail Chenjunjun.ZJ@gmail.com * */ public class InputStreamUtils { final static int BUFFER_SIZE = 4096; /** * ...
Global site tag (gtag.js) - Google Analytics