- 浏览: 410641 次
- 性别:
- 来自: 福州
-
最新评论
-
野牛精:
感谢楼主分享,帮大忙了。
android ftp 客户端编写(ftp4j) -
happytianqiu:
你好,我最近也在搞这个,能发个demo吗,邮箱是:624951 ...
开发android机顶盒应用 事件,焦点处理 -
zhunanfengfeimeng:
http://www.iteye.comhttp://www. ...
android ftp 客户端编写(ftp4j) -
icyttea:
好棒!感谢楼主分享
vlc for android录制视频与截图 -
clwwlc:
有demo吗
开发android机顶盒应用 事件,焦点处理
文章列表
在git上看到一个FlowingViewGroup,代码有点旧了,2年前的,大概就是依据高与宽,横向布局,然后再竖向的.但有源程序有些缺点,比如不能使用RelativeLayout作为内部的项.这大大限制了它的使用.
所以我修改了下,目前作为微博中多图浏览的控件,动态高与宽显示,而不是像其它程序那种使用GridView.
至少它是一个轻量的控件.
https://github.com/archko/FlowingViewGroup
这是我的源码,可以在上面找到原作者的地址.效果图在wiki中.首页也有.
当然它还有一些缺点,bug没有修正.比如notifydatasetchanged就 ...
机顶盒应用不同于手机应用,因为多数是没有触摸屏的,只能靠遥控器,所以要保持一个焦点的位置,让用户知道当前操作作用的对象.
然而一些app,依据系统对focus的判断,会出现的状况:
上下导航时,不是想要的结果.
边缘移动时,会出现 ...
android 磁盘缓存.
- 博客分类:
- android
开发一个app,特别是图片的app,免不了要存储图片,内存缓存是必要的,之前的几篇文章已经有涉及.磁盘的缓存,也是相当必要的.
最近在做一个机顶盒应用,结果,机顶盒的sdcard真烂,导致整个程序的速度被影响了. 报怨一下,这么差的卡就不要拿出来丢人了.
图片下载中,使用了磁盘缓存.android系统中有一个可供使用的缓存类,是个不错的选择.
DiskLruCache
直接上代码吧,
具体的代码可以查看apollo 程序,git上有源码,也可以直接搜索disklrucache.
这个缓存策略多数情况是可用的,还带有渐变效果,是个不错的选择.然而我在使用时,出现崩溃的状况,程序因为jn ...
TextView 文字淡入效果
- 博客分类:
- android
一个文本渐渐地从左到右的显示。
几步就可以了实现了。利用的是View的fade边缘。当然也可以自己画,可是没有成功。
直接上代码:
class FadeTextView extends TextView {
long delta=70l; //步进时间
int width=0; //字符串宽度
int widthPixels=0; //字符串的显示宽度
int wp=4; //字符串的显示宽度步进
public FadeTextView(Context context) {
super(context) ...
往系统中插入一条短信息,然后在通知栏中通知,点击通知栏后可以在系统短信列表中出现,就这样制造了一条垃圾短信了。
虽然不知道是不是所有的机器都适合,但至少有成功的。
首选,往数据库中插入一条短信:
String message="message content";
String fromAddress="130000";
Uri uri=insertSms(fromAddress, message);
Uri insertSms(String fromAddress, String message) {
...
最新的mupdf已经更新了android,还是不错的,使用了AdapterView效果还算好的。简单地编译下就可以使用了,只是在滑动时不是很好。容易向各方面滑动。
这次简单介绍下编译的过程。默认它是支持中文的。
先下载源码,这次第三方库是使用git下来的。
所以先到thirdparty目录下,可以看到几个目录。还有一个readme,在外层目录执行这个文件里面的两条命令,下载所需要库。然后在这目录下会将对应的源码下载。
过程:
git clone git://git.ghostscript.com/mupdf.git --depth=1 加后面的参数,不会下载所有的branch,
就是先在m ...
上次说到csipsimple里面使用皮肤的方式,是一个receiver来接收,然后setresultdata返回 数据的。
由于它是在onresume中才调用 主题的,所以会有一段时间先看到一些旧的资源,然后才刷新界面,这样的好处是选择了不同的主题马上会看到结果。显然也有不好一面了。就是每次onresume都会调用一次。
总得来说,主题变换都是通过 getThemePackageName,得到主题apk的包名。
Resources themeResources = null;
themeResources = pm.getResourcesForApplication(themePackage ...
如今的程序猿,当然先从网上搜索一番了。关于皮肤的制作 ,主要有三种,似乎所有 的文章都是从一处抄来的。
我也顺便抄了一段:其中以apk安装版本的为例子。
shareuserid这个东西,由实践得出结论,不是用在这里的,没有也没关系。
创建相关的Context:
Context context = createPackageContext("com.yuchen.customskin"
Context.CONTEXT_IGNORE_SECURITY);
前面的包名,你自己想办法 弄到了。
有了这个东西,就可以处理相关的界面了。比如:Drawable ...
搜狗输入法,你一个输入法,凭什么发短信。
- 博客分类:
- android
搜狗输入法,你一个输入法,凭什么发短信。
没有3g网络,wifi也没有,今天早上却收到搜狗输入法的更新通知。原来也经常会有这样的通知,没有注意,今天一看,原来它还有发短信的权限。
你就干你该干的事吧,联系人的读取我就不计较了,还有发短信的权限。
88了。
哥以后不会再用它了。、
有图为证,不是瞎说 :
其它输入法的权限:
android聊天列表实现
- 博客分类:
- android
关于聊天内容,见得多了,就是一个列表,里面存着不同的人的聊天记录,自己的内容在一边,其它人的内容在另一边。列表没有看到分隔线,背景是白的或其它的,没有列表按下的效果。
现在一个一个解决:
列表背景andro ...
关于表情的实现,sdk里面也提供一个表情的解析类,SmileyParser,,可以利用这个类来处理表情的。
它主要是构造了一个SpannableStringBuilder,然后里面添加ImageSpan,虽然打印出来的字符串与没有经过处理的一样,但经过这个处理后就可以显示图片了,有了ImageSpan,才有表情的显示。
关于微博的表情,可以从api里面下载。表情的格式大概是:
[{"phrase":"[织]","type":"face","url":"htt ...
android bitmap内存限制
- 博客分类:
- android
http://phenom.iteye.com/blog/1541291
(DOC)Displaying Bitmaps Efficiently
这篇是翻译的,
此次是实践,是关于Android系统的图片解码的实例
文中说到:
摄像头在GalaxyNexus拍一张照片有2592*1936像素,如果bitmap使用ARGB_8888配置(2.3默认的),加载这张照片到内存需要消耗约19mb内存,(2592*1936*4bytes)
19m的内存对模拟器的16m来说,显然太大了,但对于真实的机器 ,还是可以的
至于说Android的图片内存8m,这个不知道是听谁说的,总之我也没有找到标 ...
Tips for Android Tabs
- 博客分类:
- android
http://www.androiduipatterns.com/2012/08/tips-for-android-tabs.html
又是一篇关于tab标签的文章,看不到图的可以用代理.
ui设计模式:
Tips for Android Tabs
tab标签可以算得上是在移动ui中最流行的使用最多的ui控件了,它提供了快速的,轻松地访问到app ...
http://www.androiduipatterns.com/2012/06/emerging-ui-pattern-side-navigation.html
文章翻译大概内容:这是一篇关于侧边导航栏的文章,说明了侧边栏与原始的dashboard面板的不同与优势所在。
能力有限,翻译中有不少问题,勉强着看吧,英文原文 ...
extends PreferenceActivity implements SharedPreferences.OnSharedPreferenceChangeListener
这样的Activity需要覆盖方法:public void onSharedPreferenceChanged(SharedPreferences options, String key) ;
然而 如果只是这样,在当前的Activity是不会生效的。
需要覆盖两个方法:
@Override
protected void onResume() {
super.onResume() ...