![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android移动开发
文章平均质量分 67
developer_xia
这个作者很懒,什么都没留下…
展开
-
Android UI布局 layer-list
当我们想把多个图层叠在一起显示的时候,可以使用layer-list在/res/drawable/文件夹下建立 test.xml内容如下:xml version="1.0" encoding="utf-8"?> layer-list xmlns:android="http://schemas.android.com/apk/res/android">转载 2012-08-08 09:15:15 · 516 阅读 · 0 评论 -
Android include标签
android中include标签是为了便于控件的覆用的一个很好解决方案。但是也有一些需要注意的地方,下面是本人在项目中碰到过的一个问题,做此记录,便于以后查看。include标签用法。1.新建一个xml文件,命名 head.xmlhead.xml文件内容如下:http://schemas.android.com/apk/res/android"原创 2012-08-08 09:14:07 · 433 阅读 · 0 评论 -
Android里merge和include标签的使用
1.使用 标签来重用layout代码如果在一个项目中需要用到相同的布局设计,可以通过 标签来重用layout代码,该标签在android开发文档中没有相关的介绍。在android主屏程序中 用到了这个标签: [xhtml:showcolumns] view plaincopy·········10········20····转载 2012-08-08 09:43:41 · 28449 阅读 · 0 评论 -
CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
看到CheckBox这一章的内容,发现监听CheckBox的事件有很多,OnCheckedChangeListener、OnClickListener、OnTouchListener。于是写代码为了测试他们的区别。 package com.xc.ex04_04; import android.app.Activity; import android.os.Bundle;转载 2012-08-08 17:43:58 · 3997 阅读 · 0 评论 -
ExpandableListView研究
最近想做依照QQ做些那样的效果,所以就用到了ExpandableListView,在网上搜集了一些,在加上自己的总结,如下: 1.自定义 ExpandableListView 的group的样式 目的:把小箭头放在右边 先把 groupIndicator 属性禁掉,android:groupIndicator="@null",然后把自定义的布局加入转载 2012-08-08 22:52:19 · 3352 阅读 · 0 评论 -
listview加载性能优化ViewHolder
在android开发中Listview是一个很重要的组件,它以列表的形式根据数据的长自适应展示具体内容,用户可以自由的定义listview每一列的布局,但当listview有大量的数据需要加载的时候,会占据大量内存,影响性能,这时候就需要按需填充并重新使用view来减少对象的创建。ListView加载数据都是在public View getView(int position, View c转载 2012-08-08 18:53:11 · 530 阅读 · 0 评论 -
android中的weight
android:layout_weight详细分析介绍:布局文件是: android:orientation="horizontal" android:layout_width="fill_parent" android:layout_height="fill_parent" >android:layout_width="fill_par转载 2012-08-14 08:24:02 · 314 阅读 · 0 评论 -
android layout_weight讲解
在网上看了一些对Layout_weight的讲解,有些说的比较片面,只列举了一种情况,然后自己通过实验和一些比较好的文章总结了一下,特此记录下来,以备以后所用。Layout_weight是线性布局,也就是LinearLayout里面用到的,下面通过实验来看这个Layout_weight的特性。1.当控件的属性android:layout_width="fill_parent"时,布局文件如下:转载 2012-08-14 08:08:20 · 427 阅读 · 0 评论 -
android UI进阶之弹窗的使用
android中的PopupWindow。姑且就叫做弹窗吧,其实和AlertDialog一样,也是一种对话框,两者也经常混用,但是也各有特点。下面就看看使用方法。首先初始化一个PopupWindow1 PopupWindow mPop = new PopupWindow(getLayoutInflater().inflate(R.layout.window, null),2 L转载 2012-08-15 18:52:54 · 595 阅读 · 0 评论 -
android UI进阶之用ViewPager实现欢迎引导页面
ViewPager需要android-support-v4.jar这个包的支持,来自google提供的一个附加包。大家搜下即可。ViewPager主要用来组织一组数据,并且通过左右滑动的方式来展示。现在的大多数应用都会有一个欢迎引导页面,如图所示,通过左右滑动来告知用户一些功能特性。这个引导图效果用ViewPager可以很轻松的实现。正如前面所说,ViewPager是用来展原创 2012-08-15 19:06:01 · 428 阅读 · 0 评论 -
android UI进阶之实现listview中checkbox的多选与记录
今天继续和大家分享涉及到listview的内容。在很多时候,我们会用到listview和checkbox配合来提供给用户一些选择操作。比如在一个清单页面,我们需要记录用户勾选了哪些条目。这个的实现并不太难,但是有很多朋友来问我如何实现,他们有遇到各种各样的问题,这里就一并写出来和大家一起分享。ListView的操作就一定会涉及到item和Adapter,我们还是先来实现这部分内容。首先,写原创 2012-08-15 19:07:24 · 446 阅读 · 0 评论 -
android UI进阶之实现listview的分页加载
上篇博文和大家分享了下拉刷新,这是一个用户体验非常好的操作方式。新浪微薄就是使用这种方式的典型。还有个问题,当用户从网络上读取微薄的时候,如果一下子全部加载用户未读的微薄这将耗费比较长的时间,造成不好的用户体验,同时一屏的内容也不足以显示如此多的内容。这时候,我们就需要用到另一个功能,那就是listview的分页了。通过分页分次加载数据,用户看多少就去加载多少。通常这也分为两种方式,一种是原创 2012-08-15 19:08:07 · 399 阅读 · 0 评论 -
使用ExpandableListView
效果图 Group右边的图标是Android系统自动加上的默认图标子列表默认不加任何图标 Res/layout/expandable_list_view.xml代码 "1.0" encoding="utf-8"?> xmlns:android="http://schemas.androi原创 2012-08-15 16:22:06 · 834 阅读 · 0 评论 -
android UI进阶之实现listview的下拉加载
关于listview的操作五花八门,有下拉刷新,分级显示,分页列表,逐页加载等,以后会陆续和大家分享这些技术,今天讲下下拉加载这个功能的实现。最初的下拉加载应该是ios上的效果,现在很多应用如新浪微博等都加入了这个操作。即下拉listview刷新列表,这无疑是一个非常友好的操作。今天就和大家分享下这个操作的实现。先看下运行效果: 代码参考国外朋友Johan Ni原创 2012-08-15 19:08:55 · 499 阅读 · 0 评论 -
实现甩动拨打和挂断电话
这部分是讲传感器中的一个实例。通过上面的例子我们学会了如何获得某种类型的传感器,下面通过一个实例来学习如何使用某一个类型的传感器。我们以加速传感器为例,来实现这样一个功能:摇动手机便自动拨打某亲情号码,并实现再次摇动则挂机的功能。 工程目录:EX_12_03第一步,UI布局main.xml的代码如下,其运行效果如图12-10所示。xml version="1.0" en原创 2012-08-15 23:38:51 · 695 阅读 · 0 评论 -
android UI进阶之布局的优化
今天来讲下如何使用android中提供的工具优化我们的布局。首先我们写一个最简单的框架布局。 xml version="1.0" encoding="utf-8"?>FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical"原创 2012-08-15 23:15:16 · 331 阅读 · 0 评论 -
你有多熟悉listview?
关于listview和adatper中的部分。包括listview的基本使用,listview的优化等。我们经常会在应用程序中使用列表的形式来展现一些内容,所以学好ListView是非常必需的。ListView也是Android中比较难以使用的控件,这节内容就将详细解读ListView的用法。一个ListView通常有两个职责。(1)将数据填充到布局。(2)处理用户的选择点击等操作转载 2012-08-15 23:31:48 · 387 阅读 · 0 评论 -
android UI进阶之实现listview中checkbox的多选与记录
今天继续和大家分享涉及到listview的内容。在很多时候,我们会用到listview和checkbox配合来提供给用户一些选择操作。比如在一个清单页面,我们需要记录用户勾选了哪些条目。这个的实现并不太难,但是有很多朋友来问我如何实现,他们有遇到各种各样的问题,这里就一并写出来和大家一起分享。ListView的操作就一定会涉及到item和Adapter,我们还是先来实现这部分内容。首先,写原创 2012-08-15 23:36:23 · 403 阅读 · 0 评论 -
android UI进阶之自定义组合控件
好久没写博客了。实在是忙不过来,不过再不总结总结真的不行了。慢慢来吧,有好多需要去总结的,博客里还是记录ui方面的。今天和大家分享下组合控件的使用。很多时候android自定义控件并不能满足需求,如何做呢?很多方法,可以自己绘制一个,可以通过继承基础控件来重写某些环节,当然也可以将控件组合成一个新控件,这也是最方便的一个方法。今天就来介绍下如何使用组合控件,将通过两个实例来介绍。第一个实现转载 2012-08-15 23:40:44 · 310 阅读 · 0 评论 -
android UI进阶之布局的优化(二)
上一篇博客中介绍了布局优化的工具,层级观察器Hierarchy Viewer和布局优化分析工具layoutopt。如果看过上篇博客的会注意到,layoutopt工具提示可以将换成。其实标签在UI的结构优化中起着非常重要的作用,通过它可以删减多余的层级,达到优化UI的目的。 再来看一下上篇博客中使用的框架布局的树形结构图:根节点和LinearLayout上面那个子树为android的窗转载 2012-08-15 23:41:54 · 865 阅读 · 0 评论 -
android UI进阶之可延伸的图像
今天来讲下android UI设计中常要用到的可延伸图像。除了最基本的png,jpg与gif三种格式外,android还有一种叫做Nine-Patch的可延伸图像.9.png。和png格式不同的是,他会随着属性物的大小变化而改变自己的大小,从而来适应属性物的大小。这个特点,在我们平常的UI设计中是非常实用的。最常见的一个图片做按钮背景,来适配字体大小,这时候,你会发现,这种可延伸图像非常的好用。原创 2012-08-15 23:46:11 · 457 阅读 · 0 评论 -
android UI进阶之用gallery实现可滑动的Tab
今天还是来讲下Tab的实现。android自带的Tab在有比较多条目的时候会显得非常挤,这样不仅不美观,更加影响操作。如果Tab能做成左右滑动的,那就非常好了。其实实现这种效果并不难,而且方法也不少。今天给大家介绍下用gallery这个组件来实现的方法。 首先我们需要写Gallery的适配器。这里我们要注意的是Gallery有一个特点,就是起始一个元素的左边会留下一块空位,如下图所示:原创 2012-08-15 23:47:19 · 681 阅读 · 0 评论 -
android UI进阶之仿iphone的tab效果
相信很多人都喜欢iphone 酷炫的界面,虽然android的原生控件已经足够漂亮,但是往往不能满足用户越来越挑剔的眼光。其实,我们完全可以自己来绘制界面。今天我就来分享下做一个和iphone一样的tab界面。下面先来看下iphone上的效果在开始之前,我们必须掌握最基础的,也就是android中图形界面的绘制。首先讲下简单图形的绘制,这里我们就借绘制这个的背景部分来讲下吧。直接看代码原创 2012-08-15 23:49:20 · 2557 阅读 · 0 评论 -
android UI进阶之仿iphone的tab效果(二)
今天把这个仿iphone效果的tab写完,这个例子参考国外rolle3k共享的代码,感谢rolle3k。上篇博客我们写了一个Itab类,介绍了背景的绘制和简单的一个图的贴图方法。我们继续来完成Itab这个类,同时把他放到MainAcitvity(继承Activity)这个类内部,这样,整个程序只需一个类就可以了。(上篇博客例子运行需要再建一个Activity的子类来作为lanucher)。废话原创 2012-08-15 23:50:12 · 2932 阅读 · 0 评论 -
android UI进阶之android中隐藏的layout 抽屉的运用
最近在写一个应用,想把设置页面和应用页面放在一起,这样就能实现用户可以实时看到自己的设置对UI的影响,从而更方便的设置用户喜欢的界面。想了一段时间,发现用slidingDrawer这个控件可以实现这个效果。也就是一个抽屉。拉开抽屉,占据半个屏幕,另外半个屏幕还是显示应用页面。效果还是不错的。今天就和大家分享一下android中这个抽屉效果。其实在android的lanucher就是一个抽屉,打原创 2012-08-15 23:14:17 · 584 阅读 · 0 评论 -
android UI进阶之style和theme的使用
今天来和大家分享一下android中UI设计里面常会用到的style和theme。首先,style和theme都是资源,android提供了很多这样的默认资源。你可以来使用它们。同时你也可以自己定义style和theme。这非常的简单,只需要在res/values/这个路径里面新建一个.xml文件,而且他的根节点必须是.对每一个style和theme,给element增加一个全局唯一的名字,也原创 2012-08-15 23:45:08 · 383 阅读 · 0 评论 -
Android与本地Tomcat的连接
知道大家是否想试一下用Android模拟器如何访问自己建的Web站点呢? 下面我将讲一下如何实现 Step 1:我用的Tomcat作为本地服务器,在Webapps这个目录里,把我的名为kankong的Web工程放进来,启动Tomcat服务器. 在浏览器里输入: http://localhost(或者127.0.0.1):8080 nkong/index.html将出现如下界面:原创 2012-08-18 22:12:58 · 783 阅读 · 0 评论 -
Android学习:NAND: could not write file ...Temp\\AndroidEmulator\TMP365.tmp异常处理
今天碰到一个错误,android模拟器无法启动,错误提示如下: NAND: could not write file C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\\AndroidEmulator\TMP365.tmp, No space left on device百度上有人建议说:C:\Documents and Settings\Adminis转载 2012-08-20 19:01:22 · 1387 阅读 · 0 评论 -
Android应用程序级全局变量Application
在Android中,我们可以通过继承Application类来实现应用程序级的全局变量,这种全局变量方法相对静态类更有保障,直到应用的所有Activity全部被destory掉之后才会被释放掉。我们可以在Activity中使用getApplication(),方法来获得Application,它是代表我们的应用程序的类,使用它可以获得当前应用的主题,资源文件中的内容等,这个类更灵活的一个特原创 2012-08-31 18:49:08 · 1006 阅读 · 0 评论 -
Android HandlerThread使用小例
之前研究过handler 和 looper 消息队列,不过Android里的handler不是另外开启线程来执行的,还是在主UI线程中,如果想另启线程的话需要用到HandlerThread来实现。在使用HandlerThread的时候需要实现CallBack接口以重写handlerMessage方法,在handlerMessage方法中来处理自己的逻辑。下来给出一个小例子程序。layout文件原创 2012-08-24 09:01:05 · 551 阅读 · 0 评论 -
listView的懒加载图片
开启线程异步加载图片,然后刷新UI显示图片,而且通过弱引用缓存网络加载的图片,节省了再次连接网络的开销。这样做无疑是非常可取的方法,但是加载图片时仍然会感觉到轻微的卡屏现象,特别是listview里的item在进行快速滑动的时候。我找了一下原因,可能是在listview快速滑动屏幕的时候划过的item太多 而且每次调用getView方法后就会异步的在过去某个时间内用handler刷转载 2012-08-24 11:57:40 · 3496 阅读 · 0 评论 -
HttpClient
HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的、最新的、功能丰富的支持 HTTP 协议的客户端编程工具包,并且它支持 HTTP 协议最新的版本和建议。本文首先介绍 HTTPClient,然后根据作者实际工作经验给出了一些常见问题的解决方法。 HttpClient 基本功能的使用 (一)、GET 方法 使用 HttpClient 需要转载 2012-08-24 12:08:29 · 3270 阅读 · 0 评论 -
ListView的小技巧,小知识
在ListView中设置Selector为null会报空指针? mListView.setSelector(null);//空指针 试试下面这种: mListView.setSelector(new ColorDrawable(Color.TRANSPARENT)); 如何让ListView初始化的时候就选中一项? ListView需要在初始化好数据后,其中一项需要呈选中状转载 2012-08-24 12:32:51 · 520 阅读 · 0 评论 -
pix和dip转换的工具类
public class DensityUtil { /** * 根据手机的分辨率从 dp 的单位 转成为 px(像素) */ public static int dip2px(Context context, float dpValue) { final float scale = context.getResources原创 2012-09-04 12:23:24 · 508 阅读 · 0 评论 -
ListView优化
Adapter的作用就是ListView界面与数据之间的桥梁,当列表里的每一项显示到页面时,都会调用Adapter的getView方法返回一个View。想过没有? 在我们的列表有1000000项时会是什么样的?是不是会占用极大的系统资源?当listview有大量的数据需要加载的时候,会占据大量内存,影响性能,这时候就需要按需填充并重新使用view来减少对象的创建。ListView加载数转载 2012-08-24 11:44:46 · 561 阅读 · 0 评论 -
ListView的分页加载
对于做Android应用程序来说,ListView一定用得非常多,经常解析xml文件然后在ListView中显示,往往我们需要让它动态地加载内容,也就是不一次性地加载完成,对于手机来说,这点很重要!笔者之前也是弄的不明白,用的时候直接在网上找代码,复制粘贴,再修改一下就是自己的了,笔者的这个小Demo灵感来自于新浪或者腾讯微博手机客户端,比如第一页加载十条Item,当翻到最后一个Item的转载 2012-08-24 12:02:51 · 750 阅读 · 0 评论 -
AsyncTask的用法
在开发Android应用时必须遵守单线程模型的原则: Android UI操作并不是线程安全的并且这些操作必须在UI线程中执行。在单线程模型中始终要记住两条法则: 1. 不要阻塞UI线程 2. 确保只在UI线程中访问Android UI工具包 当一个程序第一次启动时,Android会同时启动一个对应的主线程(Main Thread),主线程主要负责处理与UI相关的事件,如:转载 2012-08-24 12:17:40 · 371 阅读 · 0 评论 -
Android中使用SoftReference缓存图片对象
Java中的SoftReference即对象的软引用。如果一个对象具有软引用,内存空间足够,垃圾回收器就不会回收它;如果内存空间不足了,就会回收这些对象的内存。只要垃圾回收器没有回收它,该对象就可以被程序使用。软引用可用来实现内存敏感的高速缓存。使用软引用能防止内存泄露,增强程序的健壮性。 SoftReference的特点是它的一个实例保存对一个Java对象的软引用,该软引用的存在不妨转载 2012-08-24 12:18:13 · 539 阅读 · 0 评论 -
andorid知识点集合
. android单实例运行方法我们都知道Android平台没有任务管理器,而内部App维护者一个Activity history stack来实现窗口显示和销毁,对于常规从快捷方式运行来看都是startActivity可能会使用FLAG_ACTIVITY_NEW_TASK标记来打开一个新窗口,比如Launcher,所以考虑单任务的实现方法比较简单,首先Android123纠正下大家一转载 2012-08-24 12:23:23 · 777 阅读 · 0 评论 -
提高抗压能力
当代的人们普遍感觉自己压力很大,那么如何提高自己的抗压能力呢?请看看。 事实上,日常生活上遇到的事情,鲜有威胁生命的严峻状况,但脑袋就是不停在转,不断有各种负面想法,常常思前想后,午夜梦回,其中一个主因,是大多数人尚未学习如何让心灵静止!我们常会被这些负面想法支配,并当作事实,久而久之,最后每件事都如此反应,甚至变成“积非成是”。不幸的是,这种感观(想法)让许多人不知不觉陷入“认知扭曲”的漩涡原创 2012-08-26 11:02:39 · 1209 阅读 · 0 评论