- 博客(20)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
转载 22种代码的坏味道,一句话概括
22种代码的坏味道,一句话概括:如果一段代码是不稳定或者有一些潜在问题的,那么代码往往会包含一些明显的痕迹。正如食物要腐坏之前,经常会发出一些异味一样。我们管这些痕迹叫做“代码异味”。参考资料:http://blog.csdn.net/sulliy/article/details/6635596http://sourcemak
2014-05-27 17:34:41 2275 1
转载 Android开发规范FML
一、Android编码规范1.java代码中不出现中文,最多注释中可以出现中文2.局部变量命名、静态成员变量命名只能包含字母,单词首字母出第一个外,都为大写,其他字母都为小写3.常量命名只能包含字母和_,字母全部大写,单词之间用_隔开4.layout中的id命名命名模式为:view缩写_模块名称_view的逻辑名称view的缩写详情如
2014-04-10 09:13:26 1390 3
原创 [笨笨的方法] 实现IOS列表的滑动删除效果
一、背景在做项目的时候,有一个需求,在两级列表中,实现类似于IOS的滑动删除效果,大体如下图:但有两点不太一样的地方:上层界面,是随手势滑动的;下层界面在上层被滑走后露出来。老大让我实现这个功能时,我想这个功能应该很简单啊,我就准备这样来做了:1.写一个对应每行的View类,本身支持滑动,这个应该不难写。2.让ExpandableListVIew的使用上述的Vi
2014-04-04 10:17:02 9175 6
转载 垂直的SeekBar:VerticalSeekBar
这是我找到的一个比较好用的垂直的SeekBar代码:public class VerticalSeekBar extends AbsSeekBar { private Drawable mThumb; public interface OnSeekBarChangeListener { void onProgressChanged(VerticalSeekBar Verti
2014-03-06 09:51:58 9439 9
原创 解决java.lang.IllegalStateException: The content of the adapter has changed but ListView...的问题
我写了一个Dialog,Dialog中有一个ListView,想要点ListView中的一项后,跳转到另外一个Activity去。但在使用时,会偶尔报出下面的错误:02-21 14:54:28.928: E/AndroidRuntime(2846): FATAL EXCEPTION: main02-21 14:54:28.928: E/AndroidRuntime(2846
2014-03-06 09:47:45 48547 14
原创 理解Android中dpi和分辨率的关系,谈谈Android做成适应全部手机的UI方式
最近我在做一个界面,UI给的切图是1280x720这个分辨率的,给的标注单位是px(像素)。 我把原图自然而然地放在drawable-xhdpi中,然后开始调整布局(当时我默认1dp=2px)。把这个布局放到一个720P的电视上,发现完全变形了,奇囧无比之际,看了下电视的density,发现这货是1,这是一个mdpi的设备!!!然后我就开始想了,720P的切图,要放在xhdpi
2014-02-27 14:56:26 77959 22
原创 Java数组泛型的小疑问
一、今天看书,看到泛型这一章,手痒痒地写了个小例子。public class GenericTypeTest { public static void main(String[] args) { // 用一下Holder类喽 Holder h = new Holder("Hello World"); System.out.println
2014-01-09 10:35:28 1034
原创 在JNI代码中异步回调Java层方法
楼主开发中有这样的情况,native代码中某回调函数需要回调Java层某方法,由于从c层代码回调时JNIEnv这个指针是取不到的,所以这成了一个问题。 google一下,这个问题还是可以解决的。1.首先我们需要保存下来一个JavaVM的指针,如下:static JavaVM* jvm;在一个init的方法里将这个指针保存下来(可以在JNI_OnLoad()里做)env-
2013-12-27 13:44:27 8638
原创 Android上使用OpenGLES2.0显示YUV数据
楼主收到这样的任务,在Android上用OpenGLES来显示YUV图像,之所以这样做,是因为:1.Android本身也不能直接显示YUV图像,YUV转成RGB还是必要的;2.YUV手动转RGB会占用大量的CPU资源,如果以这样的形式播放视频,手机会很热,所以我们尽量让GPU来做这件事;3.OpenGLES是Android集成到自身框架里的第三方库,它有很多的可取之处。博主
2013-12-27 11:44:20 35440 88
转载 NDK so库的调用和编译
NDK动态库的调用分两种情况。第一种是:so库和调用程序在同一个目录和源程序 通过同一个mk文件来编译;另外一种情况是so是外部已经编译好了的,调用程序加载调用。下面我们就来分析下面2种so的调用情况:第一部分: 内部so调用 A. 先看下工程的目录: test01.java :Java文件
2013-12-27 09:01:38 13735
原创 使用PullToRefresh实现下拉刷新和上拉加载
PullToRefresh是一套实现非常好的下拉刷新库,它支持:1.ListView2.ExpandableListView3.GridView4.WebView等多种常用的需要刷新的View类型,而且使用起来也十分方便。(下载地址:https://github.com/chrisbanes/Android-PullToRefresh)下载完成,将它导入到e
2013-12-20 15:51:46 256503 119
原创 [好用的小控件] 自带清除的EditText
public class ClearableTextView extends FrameLayout implements OnClickListener, TextWatcher, OnFocusChangeListener { private EditText mEditText; private ImageButton mClearButton; public C
2013-11-18 15:12:18 3862 1
转载 [好用的小控件] 显示全部内容的GridView
public class AllDisplayGridView extends GridView { public AllDisplayGridView(Context context) { super(context); } public AllDisplayGridView(Context context, AttributeSet attrs) {
2013-11-18 15:07:57 1852
原创 ExpandableListView的异步展开/加载children
二级列表是比较常用的控件,Group列表一般在一开始就会获取到,但Group下的子列表还是要通过网络请求去获取的,所以,这里使用异步比较好,那在界面上如何处理更好呢,楼主使用的是这样的方式:1.setup 一个ExpandableListView,Group的数据在程度一开始就加载好了。2.我们为ExpandableListView设置mList.setOnGroupClick
2013-11-18 15:00:39 8145 8
原创 ViewPager与support包里的Fragment家族一起使用
近来有这个需求,滑动的ViewPager+Fragment可以给用户不错的体验,而且我们使用起来,也很方便,代码结构也很清晰。使用起来有几个要点:1.Activity 继承 android.support.v4.app.FragmentActivity。public class DeviceListActivity extends FragmentActivity2.你
2013-11-18 14:46:00 1822
原创 如何锁定ViewPager使其不可滚动
楼主最近在使用ViewPager时有这样的小需求,baidu之发现实现方法各异,楼主自己读源码觉得我自己的这种比较靠谱:public class ControlScrollViewPager extends ViewPager { private boolean scrollable = true; public ControlScrollViewPager(Context
2013-11-18 14:33:57 9727 11
请进来看下我这样使用ContentObserver为什么观察不到db的变动?
2012-10-22
TA创建的收藏夹 TA关注的收藏夹
TA关注的人