2013年4月2日

Android开源组件小结【转】

摘要: Android自带的组件比较丑陋(个人感觉),自己写组件比较复杂,而且必须熟悉android应用层开发的一些机制,如绘制、回调,所以非迫不得已的情况下还是不要自己写组件,因为怕考虑不周全导致譬如性能或异常方面的问题,你自己写也会耗费不少时间。个人觉得采用第三方UI是个不错的选择,尤其是你需要比较复杂的UI组件,而且又比较赶项目的时候。优缺点当然第三方UI组件不全是优秀的,个人总结如下:(当然远远不止这些,欢迎讨论)优点:扩展性好,比较通用(当然也有写得比较烂的,这里不讨论),易用、开发速度快。缺点:大多数并没有google官方的组件那么稳定,甚至有些小问题。一旦有问题调试起来非常麻烦。性能有待 阅读全文

posted @ 2013-04-02 10:07 liyingming 阅读(160) 评论(0) 推荐(0) 编辑

android 之Spinner下拉菜单实现级联【转】

摘要: 效果图如下:默认第一次加载选择原始队列:级联效果图:关键代码给下拉列表选中事件监听绑定Id :复制代码代码如下:int pos = firsthand_dlbh_pinner.getSelectedItemPosition();firsthand_pdbh_adapter = new ArrayAdapter<String>(context,android.R.layout.simple_spinner_item, queu_info[pos]);firsthand_pdbh_spinner.setAdapter(firsthand_pdbh_adapter);完整代码:布局文件代 阅读全文

posted @ 2013-04-02 10:05 liyingming 阅读(5838) 评论(0) 推荐(0) 编辑

2013年3月31日

Android 中对于图片的内存优化方法[转]

摘要: 1. 对图片本身进行操作尽量不要使用 setImageBitmap、setImageResource、 BitmapFactory.decodeResource 来设置一张大图,因为这些方法在完成 decode 后,最终都是通过 Java 层的 createBitmap 来完成的,需要消耗更多内存。因此,改用先通过 BitmapFactory.decodeStream 方法,创建出一个 bitmap,再将其设为 ImageView 的 source,decodeStream 最大的秘密在于其直接调用 JNI>>nativeDecodeAsset() 来完成 decode,无需再使用 阅读全文

posted @ 2013-03-31 13:06 liyingming 阅读(162) 评论(0) 推荐(0) 编辑

2013年3月30日

android实现session保持简要概述及实现[转]

摘要: 在最近写的一个Android中需要请求web服务器中的数据,有一个登录Activity,登录后会到MainActivity,这中间登录和MainActivity都需要请求php的jsonapi,所以要在网络请求中保持session的,研究了好半天才搞定。其实sesion在浏览器和web服务器直接是通过一个叫做name为sessionid的cookie来传递的,所以只要在每次数据请求时保持sessionid是同一个不变就可以用到web的session了,做法是第一次数据请求时就获取sessionid的值并保存在一个静态变量中,然后在第二次请求数据的时候要将这个sessionid一并放在Cooki 阅读全文

posted @ 2013-03-30 19:57 liyingming 阅读(213) 评论(0) 推荐(0) 编辑

2013年3月29日

android layout 按比例布局的代码【转】

摘要: 为了创建比例大小的子View,可以将LinearLayout的宽度和高度设为fill_parent, 而将子View的宽度或是高度设为0,然后为子View设置不同权重(weight) ,这样子View的大小就会权值成比例。本例使用横向LinearLayout,LinearLayout的android:layout_width=”match_parent”,表示将使用整个屏幕宽度。对于LinearLayout的几个子View,将它们的宽度都定义为0,android:layout_width=”0dip”,然后使用layout_weight 为每个View指定宽度比例,本例为每个TextView都 阅读全文

posted @ 2013-03-29 10:29 liyingming 阅读(179) 评论(0) 推荐(0) 编辑

2013年3月28日

android UI进阶之布局的优化(二)[转]

摘要: 上一篇博客中介绍了布局优化的工具,层级观察器Hierarchy Viewer和布局优化分析工具layoutopt。如果看过上篇博客的会注意到,layoutopt工具提示可以将<FrameLayout/>换成<merge/>。其实<merge/>标签在UI的结构优化中起着非常重要的作用,通过它可以删减多余的层级,达到优化UI的目的。再来看一下上篇博客中使用的框架布局的树形结构图:根节点和LinearLayout上面那个子树为android的窗口布局,后面的TextView即为标签。黄色框内的这部分树形图即为我们的布局。可以发现红色框出的FrameLayout是 阅读全文

posted @ 2013-03-28 09:15 liyingming 阅读(159) 评论(0) 推荐(0) 编辑

android UI进阶之弹窗的使用[转]

摘要: 首先初始化一个PopupWindowPopupWindowmPop=newPopupWindow(getLayoutInflater().inflate(R.layout.window,null), LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT); 实现PopupWindow的构造函数,第一个参数导入布局,后面两个指定宽和高。弹窗一般有两种展示方法,用showAsDropDown()和showAtLocation()两种方法实现。一般参数有两种,有偏移和无偏移。bt1.setOnClickListener(newOnClickListe 阅读全文

posted @ 2013-03-28 09:14 liyingming 阅读(240) 评论(0) 推荐(0) 编辑

2013年3月26日

Android 软键盘监听事件

摘要: Android是一个针对触摸屏专门设计的操作系统,当点击编辑框,系统自动为用户弹出软键盘,以便用户进行输入。 那么,弹出软键盘后必然会造成原有布局高度的减少,那么系统应该如何来处理布局的减少?我们能否在应用程序中进行自定义的控制?这些是本文要讨论的重点。 一、软键盘显示的原理 软件盘的本质是什么?软键盘其实是一个Dialog! InputMethodService为我们的输入法创建了一个Dialog,并且将该Dialog的Window的某些参数(如Gravity)进行了设置,使之能够在底部或者全屏显示。当我们点击输入框时,系统对活动主窗口进行调整,从而为输入法腾出相应的空间,然后将该Dialo 阅读全文

posted @ 2013-03-26 15:05 liyingming 阅读(366) 评论(0) 推荐(0) 编辑

2013年3月25日

Android之ScrollView嵌套ListView[转]

摘要: publicclassUtility {publicvoidsetListViewHeightBasedOnChildren(ListView listView) {//获取ListView对应的AdapterListAdapter listAdapter = listView.getAdapter();if(listAdapter ==null) {return;}inttotalHeight = 0;for(inti = 0, len = listAdapter.getCount(); i < len; i++) {//listAdapter.getCount()返回数据项的数目Vi 阅读全文

posted @ 2013-03-25 20:23 liyingming 阅读(108) 评论(0) 推荐(0) 编辑

2013年3月24日

RadioButton和CheckBox浅析

摘要: 一.RadioButton单选按钮 RadioButton(单选按钮)在Android开发中应用的非常广泛,比如一些选择项的时候,会用到单选按钮。它是一种单个圆形单选框双状态的按钮,可以选择或不选择。在RadioButton没有被选中时,用户能够按下或点击来选中它。但是,与复选框相反,用户一旦选中就不能够取消选中。 实现RadioButton由两部分组成,也就是RadioButton和RadioGroup配合使用.RadioGroup是单选组合框,可以容纳多个RadioButton的容器.在没有RadioGroup的情况下,RadioButton可以全部都选中;当多个RadioButton被R 阅读全文

posted @ 2013-03-24 13:58 liyingming 阅读(601) 评论(0) 推荐(1) 编辑

导航