android开发
梵依然
这个作者很懒,什么都没留下…
展开
-
Android开发之WebView的缓存
我们在项目中也时常会用到WebView这个控件,当我们加载html时候,会在我们data/应用package下生成database与cache两个文件夹如下图如示: 我们请求的url记录是保存在webviewCache.db里,而url的内容是保存在webviewCache文件夹下.为了让大家更容易理解,我做一个简单的例子,我定义一个html文件,在里面加载了一个淘转载 2014-02-12 13:47:13 · 1478 阅读 · 0 评论 -
android layouts
1.引言两种定义布局的方式>1.xmlzho翻译 2014-05-08 00:33:16 · 811 阅读 · 0 评论 -
Android安全退出应用程序
杀死进程。 这种方法是没有效果的只能杀死当前的Activity无法关闭程序,在1.5的时候有用,谷歌设计的时候规定程序不能自杀android.os.Process.killProcess(android.os.Process.myPid()).终止当前正在运行的Java虚拟机,导致程序终止. 这种方法也是没有效果的,因为Android用的是dalvik虚拟机 System.exit(0);原创 2014-04-09 11:10:04 · 942 阅读 · 0 评论 -
android 数据库操作execSQL()和rawQuery()
Android提供了一个名为SQLiteDatabase的类,该类封装了一些操作数据库的API,使用该类可以完成对数据进行添加(Create)、查询(Retrieve)、更新(Update)和删除(Delete)操作(这些操作简称为CRUD)。对SQLiteDatabase的学习,我们应该重点掌握execSQL()和rawQuery()方法。 execSQL()方法可以执行insert、del转载 2014-05-14 22:27:54 · 3212 阅读 · 0 评论 -
Android ListView组件中android:drawSelectorOnTop含义
When set to true, the selector will be drawn over the selected item. Otherwise the selector is drawn behind the selected item. The default value is false.android:drawSelectorOnTop="true" 点击某一条记转载 2014-04-08 22:29:25 · 697 阅读 · 0 评论 -
Android开发之ListView:setEmptyView的问题
使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户,一般情况下,如果你是继承ListActivity,只要 当列表为空时就会自动显示TextView 但是,如果继承Activity的话,想出现上面的效果,就需要手动 ListView list= (ListView)findViewById(转载 2014-04-08 22:27:51 · 822 阅读 · 0 评论 -
android数据储存之存储方式
可以将数据储存在内置或可移动存储,数据库,网络,sharedpreference。 android可以使用Content provider来使你的私有数据暴漏给其他应用程序。一.sharedpreference 得到sharedpreference的两种方法: 1.getSharedPreferenced():使用这个方法你可以定义多个pr翻译 2014-05-16 00:45:40 · 1434 阅读 · 0 评论 -
Android代码混淆
混淆器(ProGuard)---混淆器通过删除从未用过的代码和使用晦涩名字重命名类、字段和方法,对代码进行压缩,优化和混淆。结果是一个比较小的.apk文件,该文件比较难进行逆向工程。因此,当你的应用程序对安全敏感(要求高),例如当你授权应用程序的时候,混淆器是一种重要的保护手段。 混淆器被集成在android 构建系统中,所以你不必手动调用它。同时混淆器仅在发布模式下进行构建原创 2014-04-28 12:33:11 · 1407 阅读 · 0 评论 -
Fragment真正的onPause以及onResume
`Fragment`虽然有`onResume()`和`onPause()`方法,但是这两个方法是`Activity`的方法调用时机也与`Activity`相同,和`ViewPager`搭配使用这个方法就很鸡肋了,根本不是你想要的效果,这里介绍一种方法。```java@Overridepublic void setUserVisibleHint(boolean isVisibleToUs转载 2014-05-13 13:28:42 · 977 阅读 · 0 评论 -
android数据储存之应用安装位置
android数据储存之应用安装位置翻译 2014-05-26 00:13:16 · 1693 阅读 · 0 评论 -
android设备兼容性
android被设计成可以在多种不同的设备上运行的系统,为了达到这个目的,android系统提供了一个动态app框架,在这个框架中你可以在动态文件(为不同屏幕大小的不同xml布局文件)中提供具体的配置资源,android会根据设备配置加载适当的资源。翻译 2014-05-29 00:05:06 · 2162 阅读 · 0 评论 -
android应用框架
android应用框架翻译 2014-05-27 22:58:27 · 1121 阅读 · 0 评论 -
android Toasts
1.基础Context context = getApplicationContext();CharSequence text = "Hello toast!";int duration = Toast.LENGTH_SHORT;Toast toast = Toast.makeText(context, text, duration);toast.show();当然也可以将方翻译 2014-05-07 22:56:07 · 937 阅读 · 0 评论 -
android Dialogs
1.引言Dialog是对话框的基类,可以实现以下子类:AlertDialog,DatePickerDialog,TimPickerDialog。这些类为你定义了样式和结构,不过你可以使用DialogFragment作为对话框的内容。通过DialogFragment你可以自由控制你的对话框,而不是继承Dialog对象沿用Dialog对象的一些方法。当用户按返回键或屏幕翻转的时候要注意翻译 2014-05-07 22:39:19 · 1040 阅读 · 0 评论 -
关于极光推送技术原理的几点思考
移动互联网应用现状因为手机平台本身、电量、网络流量的限制,移动互联网应用在设计上跟传统 PC 上的应用很大不一样,需要根据手机本身的特点,尽量的节省电量和流量,同时又要尽可能的保证数据能及时到达客户端。为了解决数据同步的问题,在手机平台上,常用的方法有2种。一种是定时去服务器上查询数据,也叫Polling,还有一种手机跟服务器之间维护一个 TCP 长连接,当服务器有数据时,实时推送转载 2014-05-06 22:26:10 · 1157 阅读 · 1 评论 -
Android开发之图像渲染(Shader)
在Android中,提供了Shader类专门用来渲染图像以及一些几何图形。 Shader类包括了5个直接子类,分别为:BitmapShader、ComposeShader、LinearGradient、RadialGradient以及SweepGradient。其中,BitmapShader用于图像渲染;ComposeShader用于混合渲染;LinearGradient用于线性渲染;R转载 2014-02-12 13:42:20 · 1405 阅读 · 0 评论 -
Android开发之文本中缩略图点击弹出大图效果实现
首先来张效果图,没有经过美工处理的 实现基本功能其实做这个项目复习了很多内容,将之前单个项目中用到的某些功能综合到一起了,例如1、自定义标题栏2、Java和JavaScript的互调3、Activity实现仿Dialog样式4、多线程实现考试倒计时5、退出Activity时保存配置信息(考试剩余时间)6、熟悉UI布局上面这些效果中,讲讲通过Java和JavaScript互调转载 2014-02-12 13:44:45 · 2093 阅读 · 0 评论 -
Android图形系统中形状Drawable使用详解
当你想动态画二维图形,ShapeDrawable对象是可能是你合适的选择.使用ShapeDrawable,你可以随意画出原始的形状并且应用到任何风格.ShapeDrawable是一个Drawable的派生类,所以你可以用于任何想使用Drawable的地方—比如可能是一个View的背景,通过setBackgroundDrawable()所设置.当然,你也可以把你的形状作为它自己的自定义Vie转载 2014-02-11 17:51:21 · 1291 阅读 · 0 评论 -
Listview添加headview后onItemClick的position变大
在onItemClick在有四个参数:public void onItemClick(AdapterView arg0, View view, int position, long arg3)如果在Listview中添加Headview,当使用onItemClick方法时,参数position会比原来多一,也就是说点击headview后position是0,后边依次加一。如果包含hea转载 2014-03-04 22:08:16 · 1433 阅读 · 0 评论 -
移动应用UI设计中的48dp定
有不少网友建议我多写写科普类技术性的文章, 所以我尽量往小白能看懂的方式尝试写写,这次先来讲讲程序设计中的48dp定律。那么先说说什么是dp ?其实对于一个非技术人员要把这个概念完全搞清楚还挺复杂的,所以我们就知道他是干什么用的就好,因为安卓阵营的碎片化,所以会有杂七杂八的不同分辨率的屏幕,但是一个UI人员不可能对不同分辨率把应用的图片都切一遍吧?所以就用dp这个单位,用这个玩意儿可以保证转载 2014-03-04 22:11:18 · 876 阅读 · 0 评论 -
android:clipChildren属性
一、效果图看到这个图时你可以先想想如果是你,你怎么实现这个效果。马上想到用RelativeLayout?NO,NO,NO,,, 二、实现代码xml version="1.0" encoding="utf-8"?>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android转载 2014-03-05 18:48:07 · 1203 阅读 · 0 评论 -
runOnUiThread 、 Handler 对比(一)
this.runOnUiThread(new Runnable() { @Override public void run() { try { Thread.sleep(1000 * 5); } catch (InterruptedException e)转载 2014-04-16 10:44:19 · 1197 阅读 · 0 评论 -
viewpager实现画廊(一屏多个Fragment)效果
在使用Gallery的时候大家会发现有几个问题(1). 无法控制每次滑动只滑动一页, (2). Gallery默认第一个item居中,无法修改它与Gallery的左间距。ViewPager可以方便的解决上面两个问题,但默认却无法在屏幕上显示多个Fragment。下面介绍如何利用ViewPager及android:clipChildren属性解决这个问题。1、定义xml转载 2014-04-15 22:59:59 · 1108 阅读 · 0 评论 -
Android 自定义View 一般View定义
在我们编写android程序时一般是自定义以一个类继承自Activity 并且重写onCreate方法: @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.转载 2014-03-20 22:44:06 · 583 阅读 · 0 评论 -
android View的状态值
focused状态一般是由按键操作引起的; pressed状态是由触摸消息引起的; selected则完全是由应用程序主动调用setSelected()进行控制。转载 2014-04-16 23:35:52 · 547 阅读 · 0 评论 -
android事件分发
dispatchTouchEvent 的事件分发逻辑如下:如果 return true,事件会分发给当前 View 并由 dispatchTouchEvent 方法进行消费,同时事件会停止向下传递;如果 return false,事件分发分为两种情况:如果当前 View 获取的事件直接来自 Activity,则会将事件返回给 Activity 的 onTouchEvent 进行消费;转载 2014-04-17 23:25:19 · 944 阅读 · 0 评论 -
android studio 2.0 preview 编译报错
Error:Internal error: (java.lang.ClassNotFoundException) com.android.repository.io.FileOpUtilsjava.lang.ClassNotFoundException: com.android.repository.io.FileOpUtilsat java.net.URLClassLoader.find转载 2015-12-14 09:53:12 · 1056 阅读 · 1 评论