android基础
周伯通
我心中尚未崩坏的地方
展开
-
android中ExpandableListView点击哪一条那一条显示,而其他条隐藏的实现办法
效果图:直接上代码public class MyActivity extends Activity implements HandleClick{ private ExpandableListView listView; private int lastClick = -1;//上一次点击的group的position public void on原创 2012-12-17 01:14:41 · 1451 阅读 · 0 评论 -
Android之Adapter用法总结
1.概念 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(ListView,GridView)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:Android中所有的Adapter一览: 由图可以看到在Android中与Adapter有关的转载 2012-05-17 10:33:18 · 2462 阅读 · 0 评论 -
Handler的另外一种用法(HandlerThread)
直接上代码:public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); HandlerThread hThread=new HandlerThread("myThread"); hThread.start();转载 2012-05-17 10:39:47 · 514 阅读 · 0 评论 -
Android系统在新进程中启动自定义服务过程(startService)的原理分析
在编写Android应用程序时,我们一般将一些计算型的逻辑放在一个独立的进程来处理,这样主进程仍然可以流畅地响应界面事件,提高用户体验。Android系统为我们提供了一个Service类,我们可以实现一个以Service为基类的服务子类,在里面实现自己的计算型逻辑,然后在主进程通过startService函数来启动这个服务。在本文中,将详细分析主进程是如何通过startService函数来在新进程转载 2012-05-17 10:46:47 · 815 阅读 · 0 评论 -
Android Map开发之Google Maps API申请和没有google Api的解决办法
在进行android map编程的过程中关于在eclipse中没有Google API选项的问题或者sdk manager里面没有google 的api下载1、如果要安装google api,请分析下图中的地址:http://dl-ssl.google.com/android/repository/addon.xml 下载自己需要的Packages进行解压,方法同1、2 下载列表为原创 2012-06-06 09:10:34 · 1040 阅读 · 0 评论 -
Android之菜单总结
在Android中,菜单被分为如下三种,选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu)。 1. 选项菜单(OptionsMenu)详解 Activity中需要覆盖的常用的方法: public boolean onCreateOptionsMenu(Menu menu):使用此方法创建OptionsMenu。该方法只会在选项转载 2012-07-26 19:52:37 · 500 阅读 · 0 评论 -
Android之单元测试学习
1.单元测试概念 单元测试(又称为模块测试),检验程序模块(软件设计的最小单位)正确性的测试工作,常常是程序员写的一段代码。对于面向对象编程,最小单元就是方法,包括基类(超类)、抽象类、或者派生类(子类)中的方法。 android中的测试框架是扩展的junit3,所以在学习android的单元测试之前,可以先学习junit3的使用.junit3要学习的东西其实也不多.转载 2012-07-26 19:53:33 · 519 阅读 · 0 评论 -
Android之NDK开发
一、NDK产生的背景 Android平台从诞生起,就已经支持C、C++开发。众所周知,Android的SDK基于Java实现,这意味着基于Android SDK进行开发的第三方应用都必须使用Java语言。但这并不等同于“第三方应用只能使用Java”。在Android SDK首次发布时,Google就宣称其虚拟机Dalvik支持JNI编程方式,也就是第三方应用完全可以通过JNI调用自己的C动态转载 2012-07-26 19:55:55 · 634 阅读 · 0 评论 -
Android布局大全
Android的界面是有布局和组件协同完成的,布局好比是建筑里的框架,而组件则相当于建筑里的砖瓦。组件按照布局的要求依次排列,就组成了用户所看见的界面。 所有的布局方式都可以归类为ViewGroup的5个类别,即ViewGroup的5个直接子类。其它的一些布局都扩展自这5个类。1.LinearLayout,线性布局方式 这种布局比较常用,也比较简单,就是每个转载 2012-07-26 19:57:18 · 859 阅读 · 0 评论 -
Android之TabHost布局
1.概念 盛放Tab的容器就是TabHost。TabHost的实现有两种方式: 第一种继承TabActivity,从TabActivity中用getTabHost()方法获取TabHost。各个Tab中的内容在布局文件中定义就行了。 第二种方式,不继承TabActivity,在布局文件中定义TabHost即可,但是TabWidget的id必须是@andro转载 2012-07-26 19:57:49 · 583 阅读 · 0 评论 -
Android文件操作总结
Android中读取/写入文件的方法,与Java中的I/O是一样的,提供了openFileInput()和openFileOutput()方法来读取设备上的文件。但是在默认状态下,文件是不能在不同的程序之间共享的,以上两个方法只支持读取该应用目录下的文件,读取非其自身目录下的文件将会抛出FileNotFoundException异常。创建的文件存放在/data/data//files目录下。转载 2012-07-26 20:07:01 · 705 阅读 · 0 评论 -
android的布局文件中src与background的区别
用src的时候,应是原图显示,不该变图片的大小;用background的时候,按照组件的大小来放大或者缩小图片。原创 2012-05-04 00:00:47 · 751 阅读 · 0 评论 -
android网络编程所涉及到的知识
Socket连接与HTTP连接我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。1)转载 2012-07-26 20:06:06 · 3046 阅读 · 1 评论 -
Intent的简介以及属性详解
一.Intent的介绍Intent的中文意思是“意图,意向”,在Android中提供了Intent机制来协助应用间的交互与通讯,Intent负责对应用中一次操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Intent的描述,负责找到对应的组件,将 Intent传递给调用的组件,并完成组件的调用。Intent不仅可用于应用程序之间,也可用于应用程序内部的Activity/Ser转载 2012-05-17 10:31:25 · 596 阅读 · 0 评论 -
Android之Handler用法总结
方法一:(java习惯,在android平台开发时这样是不行的,因为它违背了单线程模型)刚刚开始接触android线程编程的时候,习惯好像java一样,试图用下面的代码解决问题 new Thread( new Runnable() { public void run() { myView.invalidate(); }转载 2012-05-17 10:40:27 · 451 阅读 · 0 评论 -
数据交换格式XML和JSON对比
1.简介: XML:extensible markup language,一种类似于HTML的语言,他没有预先定义的标签,使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。具体的可以问Google或百度。相比之JSON这种轻量级的数据交换格式,XML可以称为重量级的了。 JSON : JavaScrip转载 2012-05-17 10:42:06 · 558 阅读 · 0 评论 -
Activity与Service通信(不同进程之间)
使用Messenger 上面的方法只能在同一个进程里才能用,如果要与另外一个进程的Service进行通信,则可以用Messenger。 其实实现IPC(Inter-Process Communication,进程间通信)的方式,还有AIDL,但推荐使用Messenger,有两点好处: 1. 使用Messenger方式比使用AIDL的方式,实现起来要简单很多转载 2012-05-17 10:48:37 · 495 阅读 · 0 评论 -
Android 数据查询query函数参数解析
Android 数据查询query函数参数解析 首先我们假设我们有如下表格,表格名称“Employees”:Id LastName FirstName AddressCity1 AdamsJohn Oxford Street Londo原创 2012-07-25 14:17:34 · 1354 阅读 · 0 评论 -
Android之View和SurfaceView
Android游戏当中主要的除了控制类外就是显示类View。SurfaceView是从View基类中派生出来的显示类。android游戏开发中常用的三种视图是:view、SurfaceView和GLSurfaceView。 View:显示视图,内置画布,提供图形绘制函数、触屏事件、按键事件函数等;必须在UI主线程内更新画面,速度较慢。 SurfaceView:基于view视图进行拓展的转载 2012-07-26 19:48:31 · 598 阅读 · 0 评论 -
Android解析XML
在Android平台上可以使用Simple API for XML(SAX) 、 Document Object Model(DOM)和Android附带的pull解析器解析XML文件。 下面是本例子要解析的XML文件:itcast.xmlxml version="1.0" encoding="UTF-8"?>persons> person id="23">转载 2012-07-26 19:50:01 · 402 阅读 · 0 评论 -
Android模拟器adb命令介绍
在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为Android Debug Bridge,就是调试桥的作用 在SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为Android Debug Bridge,就是调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白转载 2012-07-26 20:00:16 · 623 阅读 · 0 评论 -
Android调试工具之Traceview
Traceview是android平台配备的一个很好的性能分析工具。它可以通过图形化的方式让我们了解我们要跟踪的程序的性能,并且能具体到method。进行Traceview的版本限制对于Android 1.5及以下的版本:不支持。对于Android 1.5以上2.1下(含2.1)的版本:受限支持。trace文件只能生成到SD卡,且必须在程序中加入代码。对于Android 2.2上(转载 2012-07-26 20:00:45 · 632 阅读 · 0 评论 -
eclipse导入项目出现了红色感叹号的问题
出现这个问题的原因主要是工程导包的路径出现了问题,解决方案如下:1、首先选中有红色感叹号的工程,右键点击,选中构建路径(BuilderPath),并进入2、然后找到库(libraries),通过编辑修改当前包的路径即可,比如我的就是mysql的java驱动包错了,从新改一下路径就好,如果改了以后还有,刷新一把吧原创 2012-08-01 13:59:31 · 1727 阅读 · 1 评论 -
android中的EditText如何屏蔽软键盘以及在屏蔽软键盘弹出其它对话框之类的控件的问题
1、在我们定义好EdiText件之后加上一句话来屏蔽软件盘 editText.setInputType(InputType.TYPE_NULL);//此语句用来阻止掉输入法软键盘的弹出2、然后对该EditText控件进行点击监听 edtText..setOnClickListener(new OnClickListener()原创 2012-08-09 20:21:47 · 3049 阅读 · 1 评论 -
android中任何禁止软键盘自动弹出而点击EditText的时候才弹出
在出现该情况的控件所在的Activity中的onCreate()中加入该句就ok了,屡试不爽!!! getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);原创 2012-09-12 20:58:56 · 3388 阅读 · 0 评论 -
android之VideoView和视频播放View的扩展
1.概念及扩展 VideoView 是android 系统提供的一个媒体播放显示和控制的控件。其结构层次如下: 原型:VideoView extends SurfaceView implements MediaController.MediaPlayerControl 类结构: java.lang.Object ↳ android.view.Vie转载 2012-07-26 19:47:47 · 1097 阅读 · 0 评论 -
Android之Widget学习总结
1.Widget设计步骤 需要修改三个XML,一个class: 1)第一个xml是布局XML文件(如:main.xml),是这个widget的。一般来说如果用这个部件显示时间,那就只在这个布局XML中声明一个textview就OK了。 2)第二个xml是widget_provider.xml,主要是用于声明一个appwidget的。其中,Layout就是指定上面那个main.xm转载 2012-07-26 19:50:41 · 377 阅读 · 0 评论 -
Android多点触控技术
1 简介 Android多点触控在本质上需要LCD驱动和程序本身设计上支持,目前市面上HTC、Motorola和Samsung等知名厂商只要使用电容屏触控原理的手机均可以支持多点触控Multitouch技术,对于网页缩放、手势操作上有更好的用户体验。 在Android平台上事件均使用了MotionEvent对象方式处理,比如开始触控时会触发ACTION_DOWN,而移动操作时为转载 2012-07-26 19:54:19 · 648 阅读 · 0 评论 -
Android桌面快捷方式的实现
1)创建 /** * 为程序创建桌面快捷方式 */ private void addShortcut(){ Intent shortcut = new Intent("com.android.launcher.action.INSTALL_SHORTCUT"); //快捷方式的名称 shortcut.putExtra(I转载 2012-07-26 19:56:34 · 568 阅读 · 0 评论 -
Android中多层动态嵌套布局的实现
1.概念:在开发一些复杂界面,尤其是开发平板电脑页面时,界面布局往往比手机布局复杂很多。此时就需要用到嵌套布局。同时为了达到某种效果,需要局部的页面能够动态的变化,最典型的就是在一个页面中使用多个ViewPager。当这些ViewPager所在的页面也是动态变化的时候,就需要实现多层LinearLayout的嵌套。比如一个标签页面,头部是静态的,内容部分是动态变化的,同时每个内容中又需要动态变化,转载 2012-07-26 19:58:25 · 995 阅读 · 0 评论 -
AchartEngineActivity引擎绘制柱状图、曲线图
1.简介 AChartEngine(简称ACE)是Google的一个开源图表库(for Android)。它功能强大,支持散点图、折线图、饼图、气泡图、柱状图、短棒图、仪表图等多种图表。该项目地址位于: http://code.google.com/p/achartengine/。关于里面类的具体使用,请下载响应的文档说明(主页上有)。2.开发步骤1)在工程中新建一个文件夹比如l转载 2012-07-26 20:01:42 · 713 阅读 · 0 评论 -
android优化技术
Java初级优化1. 对于明确不需要派生的类,添加final修饰符,此时该类的所有方法都是final的。Java编译器会寻找机会内联(inline)所有的final方法。(能使性能提升50%)2. 尽量重用对象,避免生成过多的对象。对于String的连接,用StringBuffer代替。3. 尽量少用全局变量如static等(heap中创建,慢),多用局部变量(Stack中创建,快转载 2012-07-27 14:04:07 · 798 阅读 · 0 评论 -
android界面xml文件中导入另一个xml文件的方法
原创 2012-08-06 22:53:16 · 1870 阅读 · 0 评论 -
关于android中怎么设置TabWidget中图片及字体的大小的问题
由于在所做的项目中的图片资源都是从网上抠的,所以造成了,在TabWidget中图片过大,从而覆盖掉了里面的文字,最开始的效果如图 在网上众多的搜索结果中,网上大部分将的都是有关怎么更改字体的大小及颜色的问题,代码如下 设置tabHost 中的tabs的字体颜色、大小等; TabWidget tabWidget=this.getTabWidget();原创 2012-09-04 21:09:47 · 7036 阅读 · 8 评论 -
android真机调试问题,看不到logcat信息
在我们使用真机进行Android应用调试时,如果我们看到这样的信息unable to open log device '/dev/log/main':No such file or directory这是因为我们的手机没有开起log记录我的手机是华为C8800为例开启手机的log功能1、在拨号界面输入:*#*#2846579#*#* 进入测试菜单界面。2、Project Me原创 2012-09-09 19:55:35 · 2858 阅读 · 1 评论 -
Android之SurfaceView使用总结
1.概念 SurfaceView是View类的子类,可以直接从内存或者DMA等硬件接口取得图像数据,是个非常重要的绘图视图。它的特性是:可以在主线程之外的线程中向屏幕绘图上。这样可以避免画图任务繁重的时候造成主线程阻塞,从而提高了程序的反应速度。在游戏开发中多用到SurfaceView,游戏中的背景、人物、动画等等尽量在画布canvas中画出。2.实现方法1)实现步骤转载 2012-07-26 19:47:09 · 658 阅读 · 0 评论 -
android:textAppearance的应用
Android之系统自带的文字外观设置及实际显示效果图 android:textAppearancexml布局里面设置文字的外观:如“android:textAppearance=“?android:attr/textAppearanceLargeInverse”这里引用的是系统自带的一个外观,?表示系统是否有这种外观,否则使用默认的外观。可设置的值如下:textAppearanceB原创 2012-07-03 13:57:40 · 583 阅读 · 0 评论 -
Eclipse上SVN的安装和配置
IntroductionAdd your content here.Eclipse安装SVN1 点Eclipse help菜单---> software update2 选Available Software选项卡,点击add site 新建新的地址资源,在地址里面填 http://subclipse.tigris.org/update3 接下来就是安装了新建svn仓库转载 2012-09-21 23:06:45 · 820 阅读 · 0 评论 -
context理解
官方文档的解释是:Context提供了关于应用环境全局信息的接口。它是一个抽象类,它的执行被Android系统所提供。它允许获取以应用为特征的资源和类型。同时启动应用级的操作,如启动Activity,broadcasting和接收intents。 常用的Context的子类是Activity和Service,我们可以将context理解为类似于Window下的句柄,但Window下转载 2012-05-17 10:29:26 · 471 阅读 · 0 评论 -
Android之ContentProvider总结
1.适用场景1) ContentProvider为存储和读取数据提供了统一的接口2) 使用ContentProvider,应用程序可以实现数据共享3) android内置的许多数据都是使用ContentProvider形式,供开发者调用的(如视频,音频,图片,通讯录等)2.相关概念介绍1)ContentProvider简介 当应用继承ContentProvide转载 2012-05-17 10:34:05 · 682 阅读 · 0 评论