移动端
文章平均质量分 74
罗氏舞台
逍遥
展开
-
安卓控件使用系列33:ViewPager多页面滑动控件的使用方法2
安卓中使用ViewPager实现多页面滑动的效果不是只有一种方法,下面将另一种方法分享给大家。这个例子实现的是滑动页面不断出现新的相同的页面的效果。整体思路:在xml文件中添加android.support.v4.view.ViewPager、android.support.v4.view.PagerTitleStrip,新建一个xml文件,里面放入任意控件;在活动中把新建的布局文件加载在原创 2015-10-03 22:56:45 · 703 阅读 · 0 评论 -
安卓多线程编程系列7:使用Looper的不同方式(子线程中实例化Handler方式)
在Activity主线程中实例化Handler,不需要定义Looper,因为主线程中有一个默认的Looper对象。而在子线程中实例化Handler,必须要定义Looper循环消息队列和消息队列循环结束。下面我们来一起看一下在子线程中实例化Handler'方式。整体思路:在xml文件中放置一个Button控件和一个TextView控件,在activity中定义一个MyThread类实现Runna原创 2016-03-04 16:50:58 · 1739 阅读 · 0 评论 -
安卓多线程编程系列6:使用Looper的不同方式(主线程中实例化Handler方式)
在Activity主线程中实例化Handler,不需要定义Looper,因为主线程中有一个默认的Looper对象。下面我们来一起看一下这种使用方法。整体思路:在xml文件中放置一个Button控件和TextView控件,在activity中,定义一个MyThread类实现Runnable接口,在这个类中重写run方法,在这个方法中定义一个message,赋值数据,并使用handler发送,定义原创 2016-03-04 16:40:07 · 526 阅读 · 0 评论 -
安卓通知的使用系列3:对话框通知的使用之警告对话框
对话框在android开发中有这样几种形式:警告对话框、列表对话框、单选列表对话框、多选列表对话框、滚动条对话框(圆圈和条形两种形式)、自定义对话框、日期对话框、时间对话框。下面我们介绍警告对话框的使用方式。整体思路:在xml文件中定义一个button控件,并设置它的点击事件,在这个点击事件中定义一个AlertDialog.Builder 对象,设置它的属性、显示对话框并设置它的三个点击按钮的原创 2016-02-29 21:39:31 · 494 阅读 · 0 评论 -
安卓通知的使用系列5:对话框通知的使用之滚动条对话框(圆圈和条形两种形式)
滚动条对话框分为圆圈和横条两种形式,通常用于网络延迟等操作,下面我们来介绍一下这种使用方式。整体思路:在xml文件中定义两个button控件,分别设置它的点击事件,在这两个点击事件中实例化ProgressDialog对象,设置它的属性和显示方式并显示。MainActivity .java文件:button.setOnClickListener(new View.OnClickLis原创 2016-02-29 22:10:48 · 948 阅读 · 0 评论 -
安卓通知的使用系列6:对话框通知的使用之自定义对话框
自定义对话框是使用对话框的一种高级形式,下面我们来介绍一下它的使用方式。整体思路:首先定义一个custom_dialog.xml文件,在这个文件中放置几个控件,作为自定义的对话框的界面,创建一个CustomDialog类,在这个类中定义它的构造方法和show方法,在show方法中绑定custom_dialog.xm文件,设置这个xml文件中控件的属性,并显示这个自定义对话框。custom_原创 2016-02-29 22:21:24 · 433 阅读 · 0 评论 -
安卓通知的使用系列7:对话框通知的使用之日期对话框、时间对话框
日期对话框和时间对话框是android开发中使用比较少的一种对话框显示方式,这里我们也介绍它们的使用方式。整体思路:在xml文件中定义两个button控件,并在activity中设置它们的点击事件,定义一个Calendar类,初始化年、月、日、小时、分钟,在第一个点击事件中,定义一个DatePickerDialog对象,显示日期对话框并定义它的选择日期的触发事件,在第二个点击事件中,定义一个T原创 2016-02-29 22:31:58 · 621 阅读 · 0 评论 -
安卓Service组件使用系列1:启动式Service的生命周期
Service是四大组件中最重要的组件,在后台运行,不给我们提供UI的界面,某些组件可以绑定到服务上,执行进程间的通信,可以处理网络的数据交互、音乐播放、执行IO操作(这些操作都是来自后台的)。服务有两种:启动式服务、绑定式服务。启动式服务:被其他的组件(比如service)启动,操作完了,调用某些方法停止。生命周期:onCreate()-->onStartCommand()-->on原创 2016-03-08 10:07:28 · 504 阅读 · 0 评论 -
安卓Service组件使用系列2:使用Service下载网络图片并存储于sdCard卡上
使用启动式Service的方式可以处理网络的数据交互、音乐播放、执行IO操作(这些操作都是来自后台的)。下面我们以下载网络图片并存储于sdCard卡为实际应用背景来说明它的使用方法。整体思路:在xml文件中放置一个Button控件,在这个Button点击事件中启动Service。定义一个DownLoadService类继承Service,并在这个类中重写onCreate()、onStartCo原创 2016-03-08 10:41:08 · 1239 阅读 · 0 评论 -
安卓多线程编程系列5:使用message的几种不同方式(不同的构造方法和使用方式)续
message的使用方式多种多样,为了让读者可以更加全面的了解它的使用方法,我们对上一篇中的内容进行一下补充说明。另外,发送message的方式有两种:send和post整体思路:在xml'文件中放置两个Button控件,在activity的onCreate的方法中的button点击事件中,开启一个新的线程,在run方法中使用不同message的定义形式以及数据赋值形式,并发送数据,在定义的H原创 2016-03-04 16:23:06 · 427 阅读 · 0 评论 -
安卓多线程编程系列4:使用message的几种不同方式(不同的构造方法和使用方式)
一个handler对应一个MessageQueue(消息队列),message是消息队列中数据的载体Message(消息):是用来携带数据的MessageQueue(消息队列):是用来存储消息的handler:是用来发送和接收消息的Looper:让消息队列一直进行循环的(管理整个这一摊事),汉语是“环”的意思 是一个死循环:Looper会一直将handler中的message原创 2016-03-04 16:10:26 · 658 阅读 · 0 评论 -
安卓多线程编程系列3:使用handler和message下载网络图片
使用handler和message进行网络操作是多线程编程经常使用的形式,下面我们来一起看一下它的使用方法。整体思路:触发一个事件,在这个事件中开启一个线程,在这个线程中定义消息,在消息中携带数据,通过handler发送过去,在handler中的handleMessage中去处理消息,获取数据。具体而言,在xml文件中放置一个Button控件和一个ImageView控件,在activity中,原创 2016-03-04 15:52:46 · 725 阅读 · 0 评论 -
安卓控件使用系列19:日期对话框和时间对话框的使用
日期对话框和时间对话框的使用是安卓系统比较重要的内容,下面我们来介绍一下它的实现方法。原创 2015-10-02 22:43:21 · 619 阅读 · 0 评论 -
安卓控件使用系列24:Gallery画廊控件的使用方法
在安卓中有一些应用程序需要循环滑动查看一系列图片的效果,就像一个画廊一样,下面我们来一起分享一下它的使用方法。这个例子实现的是水平循环滑动查看一系列图片的效果。整体思路:在xml文件中添加一个Gallery控件,在values文件目录中定义一个attrs.xml文件,写入相应的属性,在活动中定义一个图片数组,定义一个计数器,定义一个图片适配器类继承BaseAdapter,并重写里面的方法,原创 2015-10-03 11:51:54 · 1022 阅读 · 0 评论 -
安卓控件使用系列20:ProgressBar进度条控件的使用方法
安卓中的进度条是经常使用的控件之一,下面我们来一起分享一下各种类型的进度条的使用。这个例子显示的是小中大圆形进度条和水平进度条,通过按下增加进度和减少进度来控制进度条上进度的增加和减少。整体思路:通过设置ProgressBar的style属性来控制进度条的显示类型,是圆形还是水平,是大还是小,不进行设置的话默认为是中型圆形进度条的显示效果。在活动中设置进度条的初始属性和刻度,点击按钮的On原创 2015-10-03 11:07:41 · 708 阅读 · 0 评论 -
安卓控件使用系列27:GridView网格控件的使用方法
GridView网格控件的使用是安卓中经常用到的控件,用于把数据库中的数据显示在手机屏幕上,下面我们来一起分享一下它的使用方法。这个例子实现的是把一些图片以指定的排列方式显示在用户手机上的效果。整体思路:在xml文件中定义一个GridView控件和一个ImageView控件,然后新建一个cell.xml文件,在里面定义一个ImageView控件;在活动中实现OnItemSelected原创 2015-10-03 17:29:29 · 681 阅读 · 0 评论 -
安卓控件使用系列23:HorizontalScrollView 水平滚动控件的使用方法
水平滚动控件在安卓中使用并不常见,因此也比较少人知道它的使用方法,下面将这样的使用方法和大家分享。这里的例子实现的是多张图片的显示,已经超过了屏幕的宽度,通过滚动的形式查看右面被挡住的图片。整体思路:在xml文件中添加一个HorizontalScrollView 控件,在这个控件中添加一个LInearLayout布局,在布局中放置多张图片,这样就实现了超出屏幕部分通过滑动来查看的功能。原创 2015-10-03 11:49:56 · 587 阅读 · 0 评论 -
安卓LoaderManager异步加载数据库
在UI的主线程中异步加载数据库,使得页面比较流畅,以防止查询数据库的记录比较多或者提取数据库记录使用的时间太长会操作UI主线程的阻塞,从而造成相应异常。Loader不能用于增删改,只能用于数据库的查询操作,可以解决阻塞UI主线程的问题。整体思路:创建一个继承SQLiteOpenHelper的DBHelper类,在·这个类中声明一个数据库名称和版本号码,在onCreate方法中创建数据库表并执行原创 2016-03-01 11:49:09 · 805 阅读 · 0 评论 -
安卓多线程编程系列1:异步任务的使用之使用异步任务圆圈滚动条下载网络图片
线程在android开发中非常重要,很大程度上决定android app的性能。不会阻碍主线程的操作,并且会把结果发布在主线程上。在android3.0版本以上,不允许主线程直接访问网络,为了让UI在展示的过程中比较流畅。需要开启新的子线程去完成下载等耗时任务的操作,并把下载结果更新到UI上。AsyncTask(异步任务)是一个线程框架,封装了Thread和Handler,异步任务用于短时间的耗时原创 2016-03-04 15:02:25 · 626 阅读 · 0 评论 -
安卓多线程编程系列2:异步任务的使用之使用异步任务带有进度的横向滚动条下载网络图片
异步任务是多线程编程中经常使用的一种方式,这里我们介绍一下使用异步任务带有进度的下载网络图片的使用方法。整体思路:在xml文件中放置一个Button控件和一个ImageView控件,定义一个继承AsyncTask类的MyTask类,在这个类中重写onPreExecute、onProgressUpdate、doInBackground、onPostExecute这四个方法,分别用于表示任务执行之原创 2016-03-04 15:18:57 · 439 阅读 · 0 评论 -
安卓Service组件使用系列3:使用IntentService下载网络图片
使用IntentService的特点:1.不需要开启线程2.不需要关闭服务,自己会关闭3.使用单线程下载数据 (不需要完成线程的编写,直接访问网络就可以获取图片)因为以上两点都在它的类源码中封装好了。在面我们看一下它的使用方法。整体思路:在xml文件中放置一个Button控件,在这个Button点击事件中开启Service。定义一个DownLoadSer原创 2016-03-08 11:00:08 · 907 阅读 · 0 评论 -
安卓Service组件使用系列4:绑定service并调用service中的方法返回结果
绑定式服务:适合客户端和服务器端数据接口的交互。下面我们以绑定service并调用service中的方法返回结果为背景介绍它的使用方法。整体思路:在xml文件中放置一个TextView控件、两个Button控件,在MainActivity中实例化一个ServiceConnection类,在这个类中重写onServiceDisconnected和onServiceConnected方法,在onS原创 2016-03-08 11:41:14 · 1082 阅读 · 0 评论 -
使用病毒库检查手机中已经安装的程序
查杀病毒的程序一直是研究的热点,下面我将自己已经写好的一种检查病毒有无的程序整体思路分享给大家。在程序中,将已有的病毒库拷贝到应用程序的数据库存放的位置,开启一个线程,根据扫描的不同状态标记各个安装程序的情况。遍历所有的安装包,提取这些安装包中的MD5值,将这个MD5值作为参数在病毒库中进行查找,如果找到标记该程序为有毒程序,反之,则否。将查询的结果以消息的形式使用handler传递,hand原创 2016-03-13 21:20:49 · 731 阅读 · 0 评论 -
安卓菜单的使用系列2:使用xml文件显示菜单
使用xml文件显示菜单是常用一种菜单显示方式,下面我们来介绍一下它的使用。整体思路:在res的menu目录的main.xml中,用menu和item嵌套的方式定义菜单,在activity中的onMenuItemSelected方法中定义点击菜单所执行的操作。其中有一个操作会跳转到另一个activity,这里需要再清单文件AndroidManifest.xml文件中注册这个activity,这个原创 2016-02-29 18:48:07 · 488 阅读 · 0 评论 -
安卓菜单的使用系列3:显示上下文菜单
显示上下文菜单是常用的显示菜单的方式之一,通常用于长按view控件(listview和girdview比较常见)显示菜单的情况。整体思路:首先在main.xml文件中定义一个菜单,其中包括几个可供选择的item,在MainActivity中定义一个getData方法,用于生成一个List的数据,定义一个listivew,将数据绑定到listview,重写这个onCreateContextMen原创 2016-02-29 19:14:25 · 594 阅读 · 0 评论 -
安卓菜单的使用系列4:使用ActionMode显示菜单
安卓中高版本提示使用菜单的规则:使用ActionMode显示菜单,下面我们来一起看一下这种使用方式整体思路:在xml文件中定义一个button,并在MainActivity中定义它的点击事件,在MainActivity中声明一个ActionMode对象,定义一个匿名内部类ActionMode.Callback,配合ActionMode的使用,用于长按按钮显示菜单的功能,在button点击事件中原创 2016-02-29 19:27:57 · 1388 阅读 · 0 评论 -
安卓菜单的使用系列5:显示弹出菜单
显示弹出菜单是常用的一种显示菜单的方法,弹出的方向如果上面有空间的话在上面弹出,否则在下面弹出。下面我们来看一下它的使用方法。整体思路:在xml文件中定义一个button控件,在MainActivity中定义一个点击事件,在这个点击事件中定义一个弹出菜单,并指定弹出菜单的xml文件,定义一个点击菜单的匿名内部类,并在这个类中处理点击的弹出菜单的操作。menu.xml文件: <原创 2016-02-29 19:38:57 · 705 阅读 · 0 评论 -
安卓通知的使用系列1:土司(Toast)通知和自定义土司(Toast)通知
android中有三种通知方式:土司通知、状态栏通知、对话框通知。这里我们介绍土司通知以及自定义土司通知的使用。整体思路:在xml文件中定义两个button控件,并分别设置它的点击事件,在第一个点击事件中定义Toast对象,设置它的位置并显示。在第二个点击事件中绑定一个自己编写的xml文件,设置该xml文件中控件的属性,设置它的位置并显示。activity_main.xml文件:原创 2016-02-29 21:16:29 · 490 阅读 · 0 评论 -
安卓通知的使用系列2:状态栏通知和自定义状态栏通知通知
状态栏通知是android开发中常见的一种通知形式,下面我们来介绍一下它的使用方法。整体思路:在xml文件中放置两个button控件,分别设置它们的点击事件,声明NotificationManager对象和Notification.Builder对象,在onCreate方法中实例化这两个对象,在第一个点击事件中设置通知的各个属性并发送通知;在第二个点击事件中绑定一个自定义的xml'文件并发送通原创 2016-02-29 21:27:40 · 517 阅读 · 0 评论 -
安卓通知的使用系列4:对话框通知的使用之列表对话框、单选列表对话框、多选列表对话框
列表对话框是对话框的一种常见形式,在android开发中使用比较普遍,下面我们来介绍一个它的使用方式。整体思路:在xml文件中定义三个button控件,并分别设置它们的点击事件,在第一个点击事件中实例化一个AlertDialog.Builder对象,并设置每一个item的点击事件,在第二个和第三个点击事件中分别实例化一个AlertDialog.Builder对象,并设置单选和多选item的点击原创 2016-02-29 21:47:40 · 395 阅读 · 0 评论 -
如何复制assets中的数据库文件并访问数据库
查了很多网上写的东西,没有特别直接解决我这个问题的代码,经过自己的不断学习,将这一点突破啦。下面将方法贡献给大家。我实现的方法是先将assets中的数据库文件复制到应用程序内部,然后进行数据库的操作:1.将assets中的数据库文件信息复制到app内新创建的同名数据库文件:private void copyDB(final String dbname) {new Thread(){原创 2015-09-02 22:36:00 · 598 阅读 · 0 评论 -
安卓菜单的使用系列1:使用java代码显示菜单
菜单的显示方法有以下几种:使用java代码显示普通菜单、使用xml文件显示普通菜单、显示上下文菜单、使用ActionMode显示菜单、显示弹出菜单。这里我们首先介绍一下使用java代码显示普通菜单的方式。整体思路:在MainAcitivity的onCreateOptionsMenu方法中,添加3个菜单,分别指定它的图标、标题、快捷键等,在onOptionsItemSelected方法中,设置选原创 2016-02-29 16:12:22 · 1408 阅读 · 0 评论 -
安卓存储数据和文件系列4:内容提供者(Content Provider)方式
内容提供者(Content Provider)是android的四大组件之一,重要性可想而知,一个进程的数据可以被另外一个进程访问(在不同的apk之间可以访问),内容提供者可以跨应用,数据库跨应用的使用场景:一个应用中提供数据给其他应用;允许用户从一个应用中拷贝数据到另一个应用;在整个框架中提供一种自定义的查询建议。如果只在一个应用中使用数据的话使用SQLite,不需要使用Content Prov原创 2016-02-29 15:42:14 · 546 阅读 · 0 评论 -
安卓Service组件使用系列5:service和activity之间的数据交互
service和activity之间的数据交互 (从activity传数据给service,又从service传数据给activity),这样的使用在android开发中是比较有深度的使用方式。下面我们就来介绍一下它的使用。整体思路:在xml文件中放置一个TextView控件,三个Button控件,定义一个MyService类,继承Service,在onBind方法中返回LocalBinder原创 2016-03-08 13:14:13 · 2487 阅读 · 0 评论 -
安卓Service组件使用系列6:使用AIDL完成两个进程间的通信
Android Interface Definition Language (AIDL) 安卓接口定义语言,定义这样的接口,必须以.aidl作为后綴名。使用这样的接口定义,用于两个进程间的通信(两个apk之间需要一个通信功能时用到)。这时需要定义.aidl文件。下面我们来看一下它的使用方法。整体思路:创建一个安卓工程android_service_aidl_server,作为服务器端,定义一原创 2016-03-08 13:39:11 · 726 阅读 · 0 评论 -
安卓BroadcastReceiver组件使用系列1:普通广播的发送和接收
广播接收者BroadcastReceiver是安卓开发中的四大组件之一,下面我们来介绍一个普通广播的使用。广播的生命周期:onReceive方法执行开始到执行结束注意:在广播里不能有对话框,也不能绑定service,也不能执行耗时操作。它是接收到一个信息之后来提醒用户。整体思路:在xml'文件中放置一个Button控件,在这个Button的点击事件中,定义一个意图发送广播。定义一个MyRe原创 2016-03-08 14:47:26 · 622 阅读 · 0 评论 -
安卓BroadcastReceiver组件使用系列2:给多个广播接收者发送广播和有序广播的使用
给多个广播接收者发送广播、有序广播的使用在安卓开发中是经常使用的方式,下面我们来介绍一下它的使用方法。整体思路:在xml文件中放置两个Button控件,给这两个Button控件设置点击事件,在第一个点击事件中传递一个数据,设置一个动作并发送广播,在第二个点击事件中传递一个数据,设置一个动作并发送有序广播。新建三个继承BroadcastReceiver的广播接收类,用于接收传递的数据。在第二个B原创 2016-03-08 15:03:16 · 2626 阅读 · 0 评论 -
安卓BroadcastReceiver组件使用系列3:使用广播来判断数据网络和无线网络的连接情况
注册广播的两种方式:1.使用Context.registerReceiver() 2.使用在AndroidManifest.xml(清单文件)中注册注册广播的时候在Activity.onResume()中注册,在Activity.onPause()中卸载下面我们来介绍一下它的使用方法。整体思路:在activity中的onCreate方法中声明ConnectivityMana原创 2016-03-08 15:16:30 · 670 阅读 · 0 评论 -
安卓存储数据和文件系列1:读写sdCard方式
在android手机存储数据和文件的方式分为五种:1.文件存储(sd卡中)、2.采用共享参数(sharedpreferences)的方式存储、3.SQLite数据库存储、4.使用内容提供者(Content Provider)存储、5.存放在网络的服务器端。读写sdCard卡是常见的一种操作方式。下面我们来介绍一个这种方式的使用。整体思路:定义一个FileService类,在这个类中定义原创 2016-02-29 11:55:09 · 832 阅读 · 0 评论 -
安卓存储数据和文件系列2:共享参数(sharedpreferences)方式
下面我们来介绍在android手机中存储数据和文件的第二种方式:共享参数(sharedpreferences)方式。这种方式是读写键值对(key-value),适合存放一些信息量比较少的内容(基本类型变量)。整体思路:新建一个MySharedpreference类,在这个类中定义一个saveMessage方法,将两个字符串存放于存储介质中,并返回是否存储成功,在这个类中定义一个getMessa原创 2016-02-29 14:00:52 · 688 阅读 · 0 评论