Android
文章平均质量分 57
dalancon
这个作者很懒,什么都没留下…
展开
-
ListView 杂记
问题一:listview使选中行item高亮大家都见过这样的侧滑菜单,现在这种菜单的实现有DrawerLayout,或者Slidingmenu等等。基本这里面会包含一个listview,今天我们就来说一下listview选中一行之后,让这行的背景色变高亮,listview有一个属性是android:listSelector 这个的效果是手指点击这行没有抬起的过程都是高亮原创 2015-03-19 11:44:08 · 853 阅读 · 0 评论 -
蓝牙学习记录
蓝也开发中常用的类1、BluetoothAdapter 代表本地的蓝牙设备;2、BluetoothDevice 代表远程的蓝牙设;3、BluetoothSocket 一种类似于TCP Socket的接口,这是让当前程序与其他程序通过蓝牙设备实现数据交换的切入点。通过流 InputStream 和OutputStream4、BluetoothServerSocket 类似原创 2012-08-16 14:17:07 · 8116 阅读 · 0 评论 -
android BroadcastReciver 笔记
生命周期只有十秒左右,如果在 onReceive() 内做超过十秒内的事情,就会报错。每次广播到来时 , 会重新创建 BroadcastReceiver 对象 , 并且调用 onReceive() 方法 , 执行完以后 , 该对象即被销毁 . 当 onReceive() 方法在 10 秒内没有执行完毕, Android 会认为该程序无响应 . 所以在BroadcastReceiver 里不转载 2012-10-24 20:36:23 · 916 阅读 · 0 评论 -
Bitmap的使用 防止OOM异常
public class MainActivity extends Activity { ImageView captruepic; int requestCode = 0; String path = "/mnt/sdcard/pic.jpg"; int height = 0; int width = 0; File file = new File(path); @Overri原创 2013-07-25 17:07:55 · 1008 阅读 · 0 评论 -
DownloadManager使用
android要求所有的耗时操作都不可以在主线程中处理,所以像这样的操作都需要放在子线程中,今天我们不说java的线程操作,说一下android自带的下载管理器的使用。官方网址 : http://developer.android.com/reference/android/app/DownloadManager.Request.html下面说一下我在项目使用中的心得:1、获取Down原创 2013-08-02 16:48:00 · 5090 阅读 · 1 评论 -
Android中attrs.xml
Android中自定义属性(attrs.xml,TypedArray的使用)做Android布局是件很享受的事,这得益于他良好的xml方式。使用xml可以快速有效的为软件定义界面。可是有时候我们总感觉官方定义的一些基本组件不够用,自定义组件就不可避免了。那么如何才能做到像官方提供的那些组件一样用xml来定义他的属性呢?现在我们就来讨论一下他的用法。1、添加文件attrs.xml,位于r转载 2013-08-01 15:12:53 · 14432 阅读 · 2 评论 -
android EditText取消自动获取焦点 改善用户体验
在我们的应用中,有时候一进入一个页面, EditText默认就会自动获取焦点。弹出输入法框,用户体验很不好,那么如何取消这个默认行为呢?在网上找了好久,有点监听软键盘事件的方法,有调用 clearFouse()方法,但是测试了都不行!在对应的 xml中也找不到相应的属性可以关闭这个默认行为。后来研究了一下,在其父控件下,添加如下的属性,就可以完美解决:<LinearLa原创 2013-09-20 18:13:17 · 4807 阅读 · 1 评论 -
OnkeyDown事件 和 OnBackPressed方法注意点
今天修了一个神奇的bug,在ActivitySecond中用了OnkeyDown事件监听了返回键事件,我return true 阻止了事件向上一级的ActivityFirst传播,可是发现ActivityFirst的OnkeyUp里面对返回键的监听的代码段还是执行了,搞了半天才发现一个是OnkeyDown事件 一个是OnkeyUp事件,这两个是不同的事件,ActivitySecond中没有阻止On原创 2013-09-26 11:20:22 · 15910 阅读 · 1 评论 -
android插件apk杂记
现在的很多应用里面都含有插件程序,很多插件程序是apk程序。但是这些插件安装完成在手机的应用列表里面又找不到他们的图标。这是如何做到的呢?其实很简单:在Androidmanifest.xml中的启动Activity里面把intent-filter的launcher去掉就可以了。 activity android:name="com.example.api原创 2014-10-13 13:56:10 · 930 阅读 · 0 评论 -
android 社会化分享集成
公司让做一个微信分享的功能:就是将一些文本分享给你的微信好友或者微信的朋友圈。由于之前有过做新浪微博、QQ、人人网第三方登录的经验,所以我很自然的就去微信的开发者平台去下SDK,注册我的应用。麻烦的事情就来了。 微信的官方demo想运行起来真心难啊,而且官网上面居然资料很少。坑。。。。。。。。运行微信的官方demo下面我来说一下运行微信的官方demo:首先去开发者平台的资源原创 2014-09-16 19:56:39 · 9016 阅读 · 4 评论 -
android 超快模拟器genymotion
genymotion模拟器运行非常流畅,可以解决sdk里面自带的模拟器的缺点原创 2014-04-13 14:26:57 · 1566 阅读 · 0 评论 -
开启蓝牙 和 蓝牙搜索实现
package com.example.mybluetooth;import java.util.ArrayList;import android.app.Activity;import android.bluetooth.BluetoothAdapter;import android.bluetooth.BluetoothDevice;import android.content.原创 2012-08-16 15:22:17 · 1234 阅读 · 0 评论 -
获得手机上的软件名称 软件图标 软件包名
private List packageInfos = null;//定义一个列表 里面放的是程序的包的信息类packageInfos = getPackageManager().getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES);packageInfos.get(position).applicationInfo原创 2012-08-10 10:49:32 · 3237 阅读 · 0 评论 -
Android 稀奇古怪的问题
一 、Android Toast显示文字超出了背景,文字布局中项目中突然出现了上述的情况,先开始以为是theme的问题,但是查了很久的资料,也做了很多实验,但是没有效果,还是之前的样子。一个很偶然的情况,Toast.makeText(getActivity(), “密码不可为空”,Toast.LENGTH_SHORT).show();改成了Toast.makeText(App.ge原创 2015-09-09 15:46:01 · 2638 阅读 · 2 评论 -
SwipeRefreshLayout + RecyclerView 实现 上拉刷新 和 下拉刷新
SwipeRefreshLayout 是谷歌公司推出的用于下拉刷新的控件,SwipeRefreshLayout已经被放到了sdk中,在Version 19.1之后SwipeRefreshLayout 被放到support v4中。源码在SDK\sdk\extras\android\support\v4\src\java\android\support\v4\widget\SwipeRe原创 2015-05-28 17:06:53 · 133124 阅读 · 42 评论 -
fragment杂记
android上使用Fragment已经基本成为了一种趋势。fragment的使用今天就不说了。今天说一下fragment的生命周期的注意点。 fragment的生命周期函数onResume,onPause,setUserVisibleHint fragment的显示与否,我们基本通过这三个方法来判断。但是最近发现一些问题。 项目中的需求是:类似网原创 2015-02-26 11:36:41 · 2046 阅读 · 0 评论 -
监听ScrollView滑动方向
我们经常看到向上滑动列表的时候app的标题栏隐藏,向下滑动的时候标题栏又再次出现。这种效果我们怎么实现? 其实android的View类里面有一个方法protected void onScrollChanged(int l, intt, int oldl, int oldt)通过查询资料发现可以重写这个方法来监听列表的滑动方向。 下面我给出我针对ScrollView原创 2015-04-02 15:44:24 · 10440 阅读 · 0 评论 -
JPush集成方案
现在的移动应用中消息推送已经成为不可或缺的功能了,这样可以增加与用户的交互。 使用消息推送的方法有很多,原理大致是:移动端与消息服务器保持一个长连接,一旦服务器有消息就推给客户端,客户端收到消息做相应的处理。 消息推送 参考的实现方式:1、XMPP协议实现的openfire可以作为消息服务器。客户端也有asmack封装好了xmpp协议。openfire提供了一套IM所需的所有功原创 2014-12-11 13:45:00 · 25215 阅读 · 5 评论 -
下载apk文件在/data/data/packagename/files/目录下,如何安装成功
今天总结一下我们写的程序需要更新(默认用户已经安装上旧版本了),而用户更新时却没有sdcard的情况,如果有sdcard,那就不用废话了。。。 先说一下软件更新的基本原理,从服务器下载一个程序的apk,然后启动安装,通常的情况下我们用到的都是在sdcard中操作,比如做些图片缓存或者记录一些用户的信息之类的,而今天要总结的是在用户没有sdcard的情况下的做法。 1.摆在我们面前的转载 2014-07-25 11:22:57 · 12224 阅读 · 0 评论 -
Android-ViewPagerIndicator自定义tab数量
在上篇Android-ViewPagerIndicator简单集成的基础上,我们想开发类似网易新闻tab标签的功能,可以添加删除tab。 查看TabPageIndicator的源码我们可以看到有一个notifyDataSetChanged()方法。public void notifyDataSetChanged() { mTabLayout.removeAllViews()原创 2014-12-03 14:17:07 · 4818 阅读 · 1 评论 -
Android-ViewPagerIndicator简单集成
现在很多的应用页面都是由一个个的TAB组成的,我们可以用布局加事件监听实现tab ,只是这样的控制非常麻烦,而且有很多的开源项目可以实现这样的功能,我们今天就介绍一下ViewPagerIndicator,这个项目就是可以实现这种效果。首先下载依赖项目https://github.com/JakeWharton/Android-ViewPagerIndicator 这个页原创 2014-12-03 14:08:23 · 34070 阅读 · 4 评论 -
android:background和setImageResource的杂记
公司开发了一个apk,在新手引导页面用viewpager放了四个界面,每个界面都是一个图片。开发过程中一直没有问题,上线之后突然有一个三星的用户说一运行就崩溃。后来调试一下,note3果然运行就崩溃。报OOM错。viewpager的页面里面都是imageview实现的ImageView view = new ImageView(NoiceGuideUI.this); view.s原创 2015-01-07 16:48:32 · 6914 阅读 · 0 评论 -
android 网络监测与设置
public boolean isConnected() {//检查网络是否连接 //方法一: ConnectivityManager cm = (ConnectivityManager) this .getSystemService(Context.CONNECTIVITY_SERVICE); NetworkInfo info = cm.getActiveNetworkInf原创 2012-08-09 10:40:15 · 632 阅读 · 0 评论 -
阻止alertDialog自动关闭
android开发中, AlertDialog使用相当频繁,基本是必须使用的。 它的使用方法非常简单:alertDialog = newAlertDialog.Builder(mContext) .setTitle("提示") .setMessage("你确定要删除该附件吗?")原创 2014-09-26 13:25:55 · 7952 阅读 · 0 评论 -
Android Studio 操作记录二
公司变更我去了另外一个部门,他们的安卓开发居然用的是Adnroid Studio,没办法只要学习学习了,之前接触过但是感觉蛮复杂的,就没有深入使用。今天研究了一下,果然好多问题啊,下面我把常用的操作和遇到的问题列举一下:1、 android studio连接模拟器或者genymotion本来是连接的真机,并且运行的时候选了Use same device for future laun原创 2014-08-04 16:15:28 · 36806 阅读 · 3 评论 -
android中listview中包含ratingbar响应不了点击事件
在ListView中用RatingBar(自定义的图标),ListView就不能响应自己的单击事件OnItemClickListener。这怎么办呢?只需要将布局文件中的Ratingbar的android:isIndicator设置为false就可以了,这个代表该ratingbar只是作为指示器,不可操作。有一些情况我们需要通过自定义ListView来实现一些效果,那么在这个时候,转载 2014-02-11 19:12:32 · 5895 阅读 · 2 评论 -
centos中eclipse连接android真机开发
概要:在windows用eclipse调用手机时,要安装驱动,但在linux/centos下调用android手机时,不用安装驱动,linux/centos会识别到手机。Step1:使用下面命令监视系统信息[root@droid ~]# tail -f /var/log/messagesNov 29 22:43:20 droid udevd[704]: add_to_r转载 2014-01-24 13:09:03 · 2009 阅读 · 0 评论 -
listview itemclickListener小记
今天该同事之前写的一个程序,点击listview的每个条目播放响应视频。但是发现老师播放第一条,无法理解,后来发现adapter的实现类里面,有个方法getItemId(int position) 之前同事直接就返回1,@Overridepublic long getItemId(int position) {return 1;}而我在itemclickList原创 2014-01-16 16:10:44 · 2501 阅读 · 2 评论 -
eclipse+ADT 进行android应用签名详解
原文 地址 : http://jojol-zhou.iteye.com/blog/7194281.Eclipse工程中右键工程,弹出选项中选择 android工具-生成签名应用包: 2.选择需要打包的android项目工程: 3.如果已有私钥文件,选择私钥文件 输入密码,如果没有私钥文件见 第6和7步创建私钥文件: 4.转载 2013-07-19 11:21:39 · 660 阅读 · 0 评论 -
android contentprovider 查询时候使用limit限定
android sqlite limit语法 :网上有的说法是sqlite3 中limit n,m语法无效,实际是错误的。正确的语法是The two syntax forms are a little confusing because they reverse the numbers:LIMIT , 等价于LIMIT OFFSET LIMIT原创 2013-10-11 15:58:48 · 13654 阅读 · 0 评论 -
android actionbar的神奇问题
项目使用的是actionbarsherlock,我在手机上面运行项目的时候actionbar中通过addTab添加的tab都是在actionbar的下面一行,没有和actionbar的icon和title同行。但是当我将项目运行在pad(7寸屏幕)上面的时候,就发生了actionbar 和tab同一行的问题。后来无意中将Manifest.xml中的<uses-sdk a原创 2013-09-26 16:37:55 · 901 阅读 · 0 评论 -
android项目打包为apk文件
首先,我们需要一个keystore,当然已经有了的话就不用这一步了:cmd下:进入到jdk的bin目录,这样的话,android.keystore文件就会生成在这个目录下,签名的时候我们需要这个文件C:\Program Files\Java\jdk1.6.0_10\bin>keytool -genkey -alias android.keystore -keyalg RSA-v原创 2013-12-17 10:09:16 · 1474 阅读 · 0 评论 -
android缓存数据到本地放在哪儿最好?
之前一直不知道 sdcard/Android目录什么作用,我做的项目里面缓存数据到本地一般都是在sdcard上面建一个文件,然后把数据放在这个文件夹下面的子文件夹下。下面介绍一种更好的解决方法。应用程序在运行的过程中如果需要向手机上保存数据,一般是把数据保存在SDcard中的。大部分应用是直接在SDCard的根目录下创建一个文件夹,然后把数据保存在该文件夹中。这样当该应用被卸载转载 2013-12-19 15:02:05 · 35471 阅读 · 4 评论 -
获取运行软件的手机的安卓版本
Build.VERSION.SDK_INT //获取运行软件的手机的安卓版本/* * Copyright (C) 2007 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file原创 2013-07-19 14:35:48 · 2070 阅读 · 0 评论 -
Notification 使用
感谢 http://www.cnblogs.com/tianjian/archive/2012/12/31/2840862.htmlNotification在android中的使用比较多,比如消息推送,使用系统的下载管理器下载,音乐播放器最小化......现在总结一下Notificaiton的使用public void initNotification() { Inten原创 2013-08-05 14:23:26 · 4850 阅读 · 0 评论 -
android应用添加快捷方式
第一次运行程序添加快捷方式,我是在SharedPreferences里面添加了一个字段标记是不是第一次运行。我在Application的实现类的onCreate方法中判断@Override public void onCreate() { super.onCreate(); appContext = getApplicationContext(); SharedPrefe原创 2014-02-12 10:35:42 · 4009 阅读 · 0 评论 -
android 设置文字周围图片显示
一个搜索框 ,在框里面左边是一个搜索图标,后面是一个输入框( EditText )输入文字的时候左边的搜索图标要一直存在。之前的做法是让美工切一个包含搜索图标的背景透明的图片,然后布局的时候外层一个LinearLayout,将该图片作为LinearLayout的背景图片,然后LinearLayout的里面放一个EditText并设置marginleft 使光标正好在搜索图标的右边。这种做法实在原创 2014-02-13 16:11:47 · 5512 阅读 · 0 评论 -
ant 打包
打包步骤准备好项目的源码和依赖库源码,最好放在同一级目录下,确保源码和依赖库可在IDE中编译成功,这样就无需调整project.properties文件中依赖库的相对位置了。打开CMD命令行,进入到依赖库源码目录,执行android update lib-project -p . -t android-17,这个命令的作用是在依赖库下生成自动打包相关的文件,-p .的意思是在当前根目录原创 2014-08-04 17:08:44 · 2995 阅读 · 1 评论 -
android 屏幕横竖切换问题
Android 里面控制Activity的方向,只要在AndroidManifest.xml里面对应的Activity节点下加一句android:screenOrientation="landscape"(landscape是横屏,portrait竖屏)。 我凭这句话混了一年,基本都可以的,但是这几天我发现这招不是万能的了。 项目里面有一个横屏播放视频的PlayAcitivity,原创 2014-05-14 14:05:44 · 3514 阅读 · 2 评论 -
android 事件传递机制
Android里面事件传递机制还是非常重要的。 下面记录一下Touch事件:涉及Activity 、View 、ViewGroup Touch 事件相关方法方法功能ViewGroup View Activity dispatchTouchEvent(MotionEv原创 2014-05-09 14:45:05 · 890 阅读 · 0 评论