08 2012 档案
摘要:在网上找到的方法在ActivityGroup的子类的oncreat方法中假山setTheme(android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);注意要加在super前。
阅读全文
摘要:Activity是Android程序的表现层。程序的每一个显示屏幕就是一个Activity。正在运行的Activity处在栈的最顶端,它是运行状态的。当有新的Activity进入屏幕最上端时,原来的Activity就会被压入第二层。如果他的屏幕没有被完 全遮盖,那么他处于Paused状态,如果他被遮盖那么处于Stop状态。不管处于任何一层,都可能在系统觉得资源不足时被强行关闭,当然关闭时栈底的程序最先被关闭。譬如:当你在程序中调用 Activity.finish()方法时,结果和用户按下 BACK 键一样:他告诉 Activity Manager该Activity实例可以被“回收”。随后 Ac
阅读全文
摘要:我不知道你们是什么情况,但是我遇上的情况是将要实现动画效果的图片布局在屏幕内或者只露出一点的情况下,动画效果正常,可是在我将图片布局在屏幕外想要坐上滑动的效果时却发现动画效果失效了。我也不明白为什么,我觉得可能跟动画的机制有关,他并不是实际的移动图片,有点像layout()的效果。不是很明白,请大神们指教。不过我想除了个解决的办法在每次start动画前,先调用layout方法将向移动的图片移出来一丁点,在开始动画效果就正常了。oh yeah!!!!
阅读全文
摘要:WindowManager windowManager = getWindowManager(); Display display = windowManager.getDefaultDisplay(); screenWidth = display.getWidth(); screenHeight = display.getHeight();
阅读全文
摘要:一、相关概念1、Drawable就是一个可画的对象,其可能是一张位图(BitmapDrawable),也可能是一个图形(ShapeDrawable),还有可能是一个图层(LayerDrawable),我们根据画图的需求,创建相应的可画对象2、Canvas画布,绘图的目的区域,用于绘图3、Bitmap位图,用于图的处理4、Matrix矩阵二、Bitmap1、从资源中获取BitmapJava代码Resourcesres=getResources();Bitmapbmp=BitmapFactory.decodeResource(res,R.drawable.icon);2、Bitmap → byte
阅读全文
摘要:一、 使用BitmapFactory解析图片01// --> 使用BitmapFactory解析图片02publicvoidmyUseBitmapFactory(Canvas canvas){03// 定义画笔04Paint paint =newPaint();05// 获取资源流06Resources rec = getResources();07InputStream in = rec.openRawResource(R.drawable.haha);08// 设置图片09Bitmap bitmap =BitmapFactory.decodeStream(in);10// 绘制图片1
阅读全文
摘要:突然出现的Out Of Memory这个BUG导致我们项目中断了好几天,在经过不断地摸索之后,今天终于得到了解决。鉴于其强大的破坏力与多发性(尤其是当开发图形丰富的软件时),在此将解决方法同大家分享,希望大家以后少走弯路,而本人水平有限,如有不当,还望指教! 内存溢出将抛出如下异常: java.lang.OutOfMemoryError: bitmap size exceds VMbudget.... 按我们的经验一行一行地分析,发现了报错的原因:bitmap size exceeds VM budget, 中文意思是bitmap占用的内存大小超过了虚拟机(DVM)的允许值。 经过信...
阅读全文
摘要:// 缩放图片public static Bitmap zoomImg(String img, int newWidth ,int newHeight){// 图片源 Bitmap bm = BitmapFactory.decodeFile(img); if(null!=bm){ return zoomImg(bm,newWidth,newHeight); } return null;}public static Bitmap zoomImg(Context context,String img, int newWidth ,int newHeight){// 图片源try {Bitmap b
阅读全文
摘要:进公司的第一个项目就遇到了一个比较难缠的客户,不过总算对付过去了。在第一个项目中由于app加载的图片、报表比较多,所以经常报出内存溢出的错误,很是头疼。不过在project leader的带领下,基本算是解决了。在此感谢一下my leader,Samuel.Cai辛苦了。哈哈......以下是一些总结,ps:从我leader那边搞过来的,和大家分享一下,哈哈1. 当项目中包含大量图片,或者图片过大,可能会oom方法1 : 等比例缩小图片 BitmapFactory.Options options = new BitmapFactory.Options(); options.inSampleSi
阅读全文
摘要:小弟在项目终于到了这个问题,在查网上资料的时候发现通过layout设置的位置并不稳定,因为他的属性并没有设置在layoutParams中,而系统对View组件的布局是根据layoutParams得到的。所以最好的办法应该是,将想要实现的位置设置在layoutParams中,然后通过setLayoutParams设置。如果谁有高见,请不吝赐教。
阅读全文
摘要:开发程序时,在main.xml中添加空间ImageButton时会有一下警告:MissingcontentDescriptionattributeonimage起初不知道怎么办后来查了一下文档知道了,官方解释如下:Resolvedthiswarningbysettingattributeandroid:contentDescriptionformyImageViewandroid:contentDescription="@string/desc"AndroidLintsupportinADT16throwsthiswarningtoensurethatimagewidget
阅读全文
摘要:对作者表示感谢,在这里留个备份。最近在xoom上开发应用,碰到ui设计都是使用图片,而且是多个activity。开始没觉得怎么样,就开始做呗。等做完了,开始在前三个activity运行没问题,一切ok。但在最后一个activity里,会经常出现oom(out of memory),由于在最后一个activity,需要打开一个pdf,然后render,随着multi-touch,reander的pdf页缩放,由于reander的图片本身就比较大(比如,如果pdf放大到当前屏幕的两倍,pdf图片占用的内存为1280*800*4*2/(1024*1024),约等于8m),而且由于为了视觉上感受好,会
阅读全文
摘要:今天做了个内存优化的小测试,包括两点1,比较Drawable与Bitmap占用内存大小2,比较BitmapFactory类的decodeResource方法与decodeStream方法的效率好吧,先来看第1个测试!以下这个是测试加载1000个Drawable对象的代码,很简单的,我就不解释了!publicclassMainextendsActivity{intnumber= 1000;Drawable[]array;@OverridepublicvoidonCreate(Bundle savedInstanceState){super.onCreate(savedInstanceState)
阅读全文
摘要:(本文对我帮助很大,在此谢谢原作者)标签:AndroidAndroid加载大移动开发原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://mzh3344258.blog.51cto.com/1823534/804237在最近做的工程中发现加载的图片太多或图片过大时经常出现OOM问题,找网上资料也提供了很多方法,但自己感觉有点乱,特此,今天在不同型号的三款安卓手机上做了测试,因为有效果也有结果,今天小马就做个详细的总结,以供朋友们共同交流学习,也供自己以后在解决OOM问题上有所提高,提前讲下,片幅有点长,涉及的东西太多,大家耐心看,肯定
阅读全文
摘要:从学Android的第一天就接触这个方法,但因为最近的项目要在其他的java文件中使用view就想到要new 一个Activity对象 然后将findViewById得到的对象传进来 ,单发像不可行,不知道为什么,我猜测Activtity不可以随便实例化,它与其说是一个类,不如说就是一个对象,一个当前屏幕的对象,不知道想的对不对。后来用另一种方法实现了,可以new 一个父控件,比如LinearLayout 将他的实例传到其他类中通过调用它的findViewById方法就可以查找他的子控件了。总结下,findViewById 有两种一个事Activity 调用的,一个是View调用的。
阅读全文
摘要:在android中context可以作很多操作,但是最主要的功能是加载和访问资源。在android中有两种context,一种是 application context,一种是activity context,通常我们在各种类和方法间传递的是activity context。比如一个activity的onCreate:protected void onCreate(Bundle state) { super.onCreate(state); TextView label = new TextView(this); //传递context给view control label....
阅读全文
摘要:如题,在项目中需要用GridView实现图片的排列,但在实现拖动效果时发现可以执行到OnTouch方法体中但是没有效果,我觉得可能是GridView的BaseAdapter中的getView方法自动调用了,或者是实现拖动了但是被GridView盖住了。不太清楚,但是我用RelativeLayout布局完成后,可以实现图片拖动。不知道为什么,希望牛人解释。拖动代码 public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub int x = (int) event.getR...
阅读全文
摘要:1、概述 过去,程序员通常以像素为单位设计计算机用户界面。例如:图片大小为80×32像素。这样处理的问题在于,如果在一个每英寸点数(dpi)更高的新显示器上运行该程序,则用户界面会显得很小。在有些情况下,用户界面可能会小到难以看清内容。由此我们采用与分辨率无关的度量单位来开发程序就能够解决这个问题。Android应用开发支持不同的度量单位。2、度量单位含义 dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 dp: dip是一样的 px:
阅读全文
摘要:小弟最近项目使用GridView 发现设置android:horizontalSpacing 过小时并不能在虚拟机上实现效果可能是有默认的最小值,还是机器宽度太大 我也不知道 ,最后通过调paddingleft 和paddingRight 实现了效果 。 希望朋友们有更好的方法可以告诉我
阅读全文
浙公网安备 33010602011771号