`
文章列表

简单的瀑布流

之前看过很多网站有瀑布流的demo,自己也写了一个简陋的作练手。 思路是,一个relativelayout,内包含一个scrollview和一个progressbar 其中scrollview包含一个linearlayout.这个linearlayout又包含三个等宽的linearlayout 主activity 继承了 ontouchlienstener。 当滚动到一定长度时重新加载新的itemvew(每次加载9张图片)。 每个itemview都的高度都是随机获取到的,实现随机高度的效果。 代码在https://github.com/anelka1985/AboutScroll ...
ScaleType的值分别代表的意义: ImageView是Android中的基础图片显示控件,该控件有个重要的属性是ScaleType,该属性用以表示显示图片的方式,共有8种取值   ScaleType.CENTER::图片大小为原始大小,如果图片大小大于ImageView控件,则截取图片中间部分,若小于,则直接将图片居中显示。   ScaleType.CENTER_CROP:将图片等比例缩放,让图像的短边与ImageView的边长度相同,即不能留有空白,缩放后截取中间部分进行显示。   ScaleType.CENTER_INSIDE:将图片大小大于ImageView的图片进行等比例缩小 ...
首先我们先来看下官方API对SurfaceView的介绍 SurfaceView的API介绍 Provides a dedicated drawing surface embedded inside of a view hierarchy. You can control the format of this surface and, if you like, its size; the SurfaceView takes care of placing the surface at the correct location o ...
最近应用总是反馈database lock,或者database re-open等等sqlitedatabaseexception. 改来改去总是不得其所。stackflow上就那几个方法也都试过就是不管用。 后来在csdn上有一哥们的demo解决了问题。呵呵,还是国货当自强哈。 先说说我的应用需求吧,下载的数据都存储在db中,可以增删查改。 然后是注意的事项: 也不复杂 1:databaseHelper 使用单例实现。 2:每次操作前try 一下 begintransaction,完了transactionsuccessful, finally里判断下db是否intransacti ...
View package com.restore; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Path; import android.util.AttributeSet; import android.util.DisplayMetrics; impo ...
可以指定单位: setTextSize(int unit, int size) TypedValue.COMPLEX_UNIT_PX : Pixels TypedValue.COMPLEX_UNIT_SP : Scaled Pixels TypedValue.COMPLEX_UNIT_DIP : Device Independent Pixels mText.setTextSize(TypedValue.COMPLEX_UNIT_PX, size);
canvas.save(); //Saves the current matrix and clip onto a private stack. 保存save()之前的canvas状态 canvas.restore(); //This call balances a previous call to save(), and is used to remove all //modifications to the matrix/clip state since the last save call. 我理解为将canvas返回到save()的状态. 一个例子:用几根线画一个方向箭头,加上 ...
首先去admob的官网注册,获取到sdk jar包(最新版本的名称应该是GoogleAdMobAdsSdk-6.0.1.jar),同时获取到ADMOB_PUBLISHER_ID 配置manifest文件 application内加入 <meta-data android:name="ADMOB_PUBLISHER_ID" android:value="获取到的ADMOB_PUBLISHER_ID值" />      加入 <activity android:na ...
监听监听,顾名思义就要有broadcast和receive了。 //监听到安装新应用后的处理.. BroadcastReceiver installedBr = new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { //有新的应用安装,主要是"android.intent.action.PACKAGE_ADDED" if (intent.getAction() .equals("android ...
之前有关layout_gravity和gravity的区别总是混淆不清,每次应用都是弄得糊涂。 今天刚好有时间理一下。 简单的小例子,跟大家分享。 1. <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:lay ...
获取到管理电话管理对象. TelephonyManager manager = (TelephonyManager) this .getSystemService(Context.TELEPHONY_SERVICE); 通过这个管理对象注册监听 manager.listen(listener, events) 其中listener是具体监听事件 events 设为  PhoneStateListener.LISTEN_CALL_STATE  新建一个listener实例. 父类为 PhoneStateListener. 重写public void onC ...
首先是布局文件,线性布局,左边两个按钮垂直摆放,右边预览图以及照相获取到的图片 <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" ...
在android调用webservice时,经常要对json的格式进行处理,现在有两种方法   去处理:   1 使用JSONObject 和 JSONTokener去解析   2 使用GSON库   先看第一种方法,假如有如下的json字符串:   {   “name”: “myName”,   “message”: ["myMessage1","myMessage2"],   “place”: “myPlace”,   “date”: ”thisDate”   }   第一种解决方法:  public c ...
在使用Notifycation时,下拉通知栏后点击item项发现目标activity总是会走oncreate方法。相当于重启了这个activity,实际应用中可能不需要这样。 两个方法可以避免 1:Intent intent = new Intent(this,Class.forName("XX包名.TestActivity1")); intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP|Intent.FLAG_ACTIVITY_CLEAR_TOP); PendingIntent pIntent = PendingIntent.g ...
Keep-alive是指在同一个连接中发出和接收多次HTTP请求。优点是: 使用较少的CPU和内存 开启HTTP 管道 减少网络拥堵 在接下来的请求中,减少传输时间。 错误可以被报告但是不关闭TCP连接。 在RFC 2617第47页里,一个用户客户端 ...
Global site tag (gtag.js) - Google Analytics