Android
一路平
这个作者很懒,什么都没留下…
展开
-
Android 中对于图片的内存优化方法
1. 对图片本身进行操作尽量不要使用 setImageBitmap、setImageResource、 BitmapFactory.decodeResource 来设置一张大图,因为这些方法在完成 decode 后,最终都是通过 Java 层的 createBitmap 来完成的,需要消耗更多内存。因此,改用先通过 BitmapFactory.decodeStream 方法,创建出一个 b转载 2013-11-19 21:07:38 · 1042 阅读 · 0 评论 -
android 判断ListView滚动到底部
/*** 滚动至列表底部,读取下一页数据*/public class AutoLoadListener implements OnScrollListener{ public interface AutoLoadCallBack { void execute(String url); } private int getLastVisibl转载 2013-11-26 17:41:50 · 3037 阅读 · 0 评论 -
得到ImageView的图片,压缩成PNG,并得到二进制流数据
得到ImageView的图片,压缩成PNG,并得到二进制流数据。原创 2013-11-13 09:34:48 · 3084 阅读 · 0 评论 -
java中byte数组与int,long,short间的转换
[java] view plaincopypackage com.util; /** * * * 文件名称: com.born.util.ByteUtil.java * 文件描述: byte转换工具 * 版权所有: 版权所有(C)2001-2006 * 公 司: bran * 内容摘要: * 其他说明转载 2013-11-13 10:54:06 · 1197 阅读 · 0 评论 -
java字符串查找替换
(1).public static String StrReplace(String rStr, String rFix, String rRep) { int l = 0; String gRtnStr = rStr; do转载 2013-11-13 18:04:30 · 1203 阅读 · 0 评论 -
Android软键盘的隐藏显示研究
Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入。 那么,弹出软键盘后必然会造成原有布局高度的减少,那么系统应该如何来处理布局的减少?我们能否在应用程序中进行自定义的控制?这些是本文要讨论的重点。 一、软键盘显示的原理 软件盘的本质是什么?软键盘其实是一个Dialog! InputM转载 2013-11-14 15:03:48 · 2542 阅读 · 1 评论 -
Android 判断软键盘的状态(显示,隐藏)
自定义RelativeLayoutpackage com.demo.softkeyboard; import Android.content.Context; import android.util.AttributeSet; import android.widget.RelativeLayout; public class KeyboardListenRelativ转载 2013-11-14 15:05:52 · 13219 阅读 · 2 评论 -
android PopupWindow显示位置设置
当点击某个按钮并弹出PopupWindow时,PopupWindow左下角默认与按钮对齐,但是如果PopupWindow是下图的那样,会发生错位的情况,尤其是不同尺寸的平板上,那错位错的不是一般的不靠谱,而Android本身只提供了如下几个方法设置PopupWindow显示位置showAsDropDown(View anchor, int xoff, int yoff) 以anchor转载 2013-11-14 15:08:56 · 18023 阅读 · 0 评论 -
Android GridView 设置指定项被选中的背景图片并滚动到指定项(如果带有滚动条)
学习过程中的一点心得,代码很简单,所有直接贴上核心的代码:MainActivty.java[java] view plaincopyprint?@Override public void onCreate(Bundle savedInstanceState) { // ...省略的代码转载 2013-11-09 15:08:43 · 1861 阅读 · 0 评论 -
android中ImageView的内存问题
大家都知道Bitmap的内存问题往往是一个安卓应用的最大OOM问题。好多同学也知道可以通过bitmap.recycle();方法回收图片的内存。可是往往会在回收后出现try to use recyled bitmap的BUG。这个是因为我们回收了的Bitmap还有其他地方在使用的原因.这里给出一个解决方案。(没有通过大量的测试,不过稍微测试了一下并没有出现这个BUG,同时我也了解这个BUG出现的原转载 2013-11-19 20:57:59 · 7810 阅读 · 0 评论 -
Android中利用GridView实现水平和垂直均有滚动条的表格效果
研究了一下Android的GridView,但是默认的GridView只支持垂直滚动,不支持水平滚动,有时我们为了实现表格效果,想达到水平和垂直均有滚动条,可以利用下面方法实现)。1)main.xml -- 布局文件 android:layout_width="fill_parent" android:layout_height="fill_parent"转载 2013-11-06 16:53:04 · 1517 阅读 · 0 评论 -
Android View.VISIBLE、INVISIBLE、GONE的区别
android中UI应用的开发中经常会使用view.setVisibility()来设置控件的可见性,其中该函数有3个可选值,他们有着不同的含义:View.VISIBLE--->可见View.INVISIBLE--->不可见,但这个View仍然会占用在xml文件中所分配的布局空间,不重新layout View.GONE---->不可见,但这个View在ViewGroup中不保留位置转载 2013-11-21 15:44:09 · 1075 阅读 · 0 评论 -
解决Android加载图片时内存溢出的问题
尽量不要使用setImageBitmap或setImageResource或BitmapFactory.decodeResource来设置一张大图,因为这些函数在完成decode后,最终都是通过java层的createBitmap来完成的,需要消耗更多内存。 因此,改用先通过BitmapFactory.decodeStream方法,创建出一个bitmap,再将其设为ImageView的so转载 2013-11-21 16:20:42 · 911 阅读 · 0 评论 -
浅谈android的selector背景选择器(ListView/GridView)
关于listview和button都要改变android原来控件的背景,在网上查找了一些资料不是很全,所以现在总结一下android的selector的用法。首先android的selector是在drawable/xxx.xml中配置的。先看一下listview中的状态:把下面的XML文件保存成你自己命名的.xml文件(比如list_item_bg.xml),转载 2013-11-07 15:47:10 · 10162 阅读 · 0 评论 -
Android_Bitmap_图片的二次采样并生成缩略图
本博文为子墨原创,转载请注明出处!http://blog.csdn.net/zimo2013/article/details/168494771.Bitmap概述Android系统支持几种图片(.png (preferred), .jpg (acceptable), .gif (discouraged)), 其中Bitmap位图#ffffffff,包括图片透明度Alpha和转载 2013-11-21 15:44:55 · 2894 阅读 · 0 评论 -
Android开发优化之——使用软引用和弱引用
Java从JDK1.2版本开始,就把对象的引用分为四种级别,从而使程序能更加灵活的控制对象的生命周期。这四种级别由高到低依次为:强引用、软引用、弱引用和虚引用。这里重点介绍一下软引用和弱引用。如果一个对象只具有软引用,那么如果内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的转载 2013-11-21 15:46:39 · 811 阅读 · 0 评论 -
Android中View转换为Bitmap及getDrawingCache=null的解决方法
1.前言 Android中经常会遇到把View转换为Bitmap的情形,比如,对整个屏幕视图进行截屏并生成图片;Coverflow中需要把一页一页的view转换为Bitmap、以便实现复杂的图形效果(阴影、倒影效果等);再比如一些动态的实时View为便于观察和记录数据、需要临时生成静态的Bitmap。2.实现方法 1)下面是笔者经常用的一个转换方法 pub转载 2013-11-12 20:50:27 · 3614 阅读 · 1 评论 -
android-横竖屏切换总结-布局改变和数据保存
ndroid: 横竖屏切换总结-布局改变和数据保存目录:引言一、布局问题二、重新载入问题三、Q:横竖屏生命周期的切换有可能是什么样的?引言 Activity在Configuration变化(比如设备横竖屏切换)时会重启Activity,即会执行onDestory()周期函数,然后onCreate(),重新创建Activity。这是因为这样可以让转载 2014-12-25 09:49:28 · 1576 阅读 · 0 评论 -
计算两个GPS坐标的距离 方法二 - C语言
#include #ifdef WIN32#define round(x) floor(x+0.5) #endif /*WIN32*/#define PI 3.1415926535897static const double EARTH_RADIUS = 6378.137;///////////////////////////////////////转载 2015-03-27 14:46:45 · 2804 阅读 · 1 评论 -
计算两个GPS坐标的距离 方法一 - C#语言
场景:已知两个GPS点的经纬度坐标信息。计算两点的距离。1. 距离/纬度关系 GPS: 22.514519,113.380301 GPS: 22.511962,113.380301距离: 284.6439379583341 jl_wd=284.6439379583341/(22.51451-22.511962)= 111712.69150641055729984301转载 2015-03-27 14:44:03 · 2283 阅读 · 0 评论 -
计算两个GPS坐标的距离 方法四 - Java语言
Java 计算两个GPS坐标点之间的距离1. Lat1 Lung1 表示A点经纬度,Lat2 Lung2 表示B点经纬度;2. a=Lat1 – Lat2 为两点纬度之差 b=Lung1 -Lung2 为两点经度之差;3. 6378.137为地球半径,单位为千米;计算出来的结果单位为千米。从google maps的脚本里扒了段代码,是用来计算两点间转载 2015-03-27 14:52:23 · 11594 阅读 · 1 评论 -
android 获取手机网络状态
与网络相关的,就经常要做网络状态判断及信息获取。用到的类ConnectivityManager 和NetworkInfo //获取网络连接管理者 ConnectivityManager connectionManager = (ConnectivityManager)转载 2015-03-11 14:07:12 · 2934 阅读 · 0 评论 -
Android判断用户2G/3G/4G移动数据网络
在做 Android App 的时候,为了给用户省流量,为了不激起用户的愤怒,为了更好的用户体验,是需要根据用户当前网络情况来做一些调整的,也可以在 App 的设置模块里,让用户自己选择,在 2G / 3G / 4G 网络条件下,是否允许请求一些流量比较大的数据。通过 Android 提供的 TelephonyManager 和 ConnectivityManager 都可以获取到转载 2015-03-11 16:50:13 · 659 阅读 · 0 评论 -
Android 手机信号 dBm, asu
if (!signalStrength.isGsm()) { int dBm = signalStrength.getCdmaDbm(); if (dBm >= -75) bin = SIGNAL_STRENGTH_GREAT; else if (dBm >= -85) bin = SIGNAL_STRENGTH_GOOD; else if (dBm >= -9转载 2015-03-12 17:11:31 · 5251 阅读 · 1 评论 -
Android横竖屏切换小结
(老样子,图片啥的详细文档,可以下载后观看 http://files.cnblogs.com/franksunny/635350788930000000.pdf)Android手机或平板都会存在横竖屏切换的功能,通常是由物理重力感应触发的,但是有时候也不尽然,通常在设置里面我们可以对手机的横竖屏切换进行关闭,操作界面如下 只需要点击下“屏幕旋转”按钮就可以关闭横竖屏切换了。转载 2014-12-24 11:32:44 · 625 阅读 · 0 评论 -
android - ListView的使用。
ListView 的功能比较强大,也有很多种使用方法,在这里介绍一种简单的使用方法。首先,看一下效果图:这个列表的功能是单击某一项时,就选中某一项,并反显它,其它功能同ListView.要实现上面的效果,需要做一下BaseAdapter,同时需要修改ListView的属性及右边滑块的属性。下面给出MyListAdapter的代码:import java.lang.ref原创 2012-03-29 11:18:49 · 4346 阅读 · 2 评论 -
Android手势(上,下,左和右的判断)
Android中提供了判断手势的接口,所有我们可以根据提供的API来实现各种各样的手势功能来提高手机应用的用户体验。下面是我写的一段小Demo:GestureActivity.java public class GestureActivity extends Activity { private GestureDetector gestureD转载 2013-12-19 15:23:29 · 964 阅读 · 0 评论 -
Android Gesture 手势识别使用实例
很高兴能在Android1.6的sdk看到手势识别这一功能,之前一直在想,如何在android中实现nds游戏那样用手势(准确点应该是笔势)来控制游戏角色?现在总算看到一点曙光了,不过手势要做到笔势那样随心所欲地控制游戏人物,还有很多细节问题需要处理。 在Android1.6的模拟器里面预装了一个叫Gestures Builder的程序,这个程序就是让你创建自己的手势的(Gestur转载 2013-12-19 16:00:33 · 1106 阅读 · 0 评论 -
android 将View保存成Bitmap
1、 public Bitmap convertViewToBitmap(View view){ Bitmap bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888); //利用bitmap生成画转载 2014-01-14 14:46:19 · 7521 阅读 · 1 评论 -
PopupWindow响应返回键
直接给代码:LayoutInflater inflater = LayoutInflater.from(mContext);View popupWindow_view = inflater.inflate(R.layout.more_popup, null,false); popupWindow = new PopupWindow(popupWindow_view, 245, 400原创 2016-08-09 16:13:37 · 607 阅读 · 0 评论 -
NDK JNI 环境搭建
一、下载android NDK下载地址:http://developer.android.com/sdk/ndk/index.html下载后,再将压缩包解压缩到你的工作目录,例如:d:\android-ndk-r7Android NDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及rea原创 2012-03-08 16:11:45 · 1935 阅读 · 0 评论 -
android学习(1) - Button单击事件的响应
通过Eclipse可以在自己的应用程序中增加一个按钮,同时在main.xml中会自动增加如下的代码:--- <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content"原创 2012-02-16 18:08:30 · 60623 阅读 · 6 评论 -
JNI - 如何将 char* 转换成 jstring
如何将JNI中将 char* 字符串转换成 jstring? 这个问题困扰了我好久,也用不同的方法进行调试过,都没有成功。今天无意中调试成功了下面的代码,可以方便的将char*转换成jstring。jstring CharTojstring(JNIEnv* env, char* str){ jsize len = strlen(str); jclas原创 2012-03-23 17:35:39 · 8806 阅读 · 3 评论 -
android - anim translate中 fromXDelta、toXDelta、fromYDelta、toXDelta属性
<translate android:fromXDelta="0" android:toXDelta="100%" android:duration="300"/> <alpha android:fromAlpha="0.0" android:toAlpha="1.0" android:duration="300" />原创 2012-03-23 15:51:53 · 46667 阅读 · 8 评论 -
android - JNI - 一维数组、二维数组的访问与使用
在JNI中访问JAVA类中的整型、浮点型、字符型的数据比较简单,举一个简单的例子,如下://得到类名jclass cls = (*env)->GetObjectClass(env, obj);//得到Java类中的变量NumberjfieldID fNumber = (*env)->GetStaticFieldID(env, cls, "Number", "I");//将JNI中也原创 2012-03-31 15:09:47 · 10723 阅读 · 4 评论 -
android - 自定义标题栏(在标题栏中增加按钮和文本居中)
现在很多的Android程序都在标题栏上都显示了一些按钮和标题,如下图:下面通过实例来看一下如何实现。1、在layout下创建一个titlebtn.xml文件,内容如下: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orien原创 2012-03-12 09:02:50 · 28979 阅读 · 10 评论 -
android - 利用View自身的setAnimation来实现动画。
最近,在做一个程序要实现切换到下一项时要有动画的效果。使用ViewFlipper 、TextSwitcher都没有办法达到效果,无意中发现TextView中有一个setAnimation的函数。调试了一下效果还不错,程序也很简单。public void UpdateViewContent(){ TextView txtview = (TextView)findViewById(R原创 2012-03-28 14:47:38 · 24892 阅读 · 5 评论 -
android - GestureDetector 实现界面左右滑动效果的优化
首先上效果图:为了我表述方便,我将上图的显示区域进行标识,如下图:上图中的左右箭头表示用户手势的方向和位置,当我们在View1的箭头位置进行手势时可以实现左右滑动的界面切换效果,但是在View2的箭头位置进行手势时无法被识别到,如果在View1中还有其它的控件,如按钮,也同样会出现这样的问题,为什么?怎么解决?其实原因也很简单,大家也可以猜得到,就是,View2中的Text原创 2012-03-30 13:18:55 · 7346 阅读 · 1 评论 -
Android - ListActivity 单击事件的响应
ListView 是Android比较常用的控件。在ApiDemo中有相关的使用方法,但是在DEMO中并没有提到如何响应它的单击操作。在Android中有两种单击:1、短按单击。2、长按单击。如何实现它呢?1、实现短按单击,只需要在你的代码中重载ListActivity的函数onListItemClick即可。如下:public class testList exten原创 2012-02-28 11:54:04 · 9379 阅读 · 3 评论 -
Android - 主要的UI元素。
下面的这张图呈现了Android中最基本的UI构造块。该图片表示的逻辑结构也是出自《Android系统原理及开发要点详解》一书。Android中的UI元素常常在布局文件(Layout)中进行描述,在Java源代码中通过findViewById()函数根据ID获得每一个View的句柄,并且转换成实际的类型来使用。android.view.View的扩展者也称作wi原创 2012-02-21 18:49:40 · 2298 阅读 · 0 评论