我要实现这样一个标题栏 共 4 个选项,采用布局是一个 TextView 对应一个小三角 ImageView,各个选项没被点击时,字体颜色是 黑色,小三角不显示,点击后,字体变色,小三角居下显示,同时在下面的 layout 显示对应的布局内容. 要实现这样的逻辑,并不难,但是,如果常规地去写的话,代码段很长,很繁琐!后来我这样做了. 先写个获取 list<> 的泛型函数,用来获取 要显示的布局集合 再写个获取 TextView 和 ImageView 对应绑定的 Map 泛型函数 最后是整合,…
英文原文: http://trickyandroid.com/saving-android-view-state-correctly/ 转载此译文须注明出处. 今天我们聊一聊安卓中保存和恢复view状态的问题.我刻意强调View状态是因为我发现这个过程要比保存 Activity 和 Fragment状态稍微复杂,还有一个原因是因为网上有太多“重复造的轮子”(有时还是奇丑无比的轮子). 为什么我们需要保存View的状态? 这个问题问的好!我坚信移动应用应该帮助你解决问题,而不是制造问题. 想象一下…
Tips <Effective Java, Third Edition>一书英文版已经出版,这本书的第二版想必很多人都读过,号称Java四大名著之一,不过第二版2009年出版,到现在已经将近8年的时间,但随着Java 6,7,8,甚至9的发布,Java语言发生了深刻的变化. 在这里第一时间翻译成中文版.供大家学习分享之用. 32. 合理地结合泛型和可变参数 在Java 5中,可变参数方法(条目 53)和泛型都被添加到平台中,所以你可能希望它们能够正常交互; 可悲的是,他们并没有. 可变参数的目…
数组可以在创建的时候就指定存放的数据类型,这样放入不同类型的时候就会发生编译错误. 而集合却可以存储多种不同类型,这样的话如果是遍历的时候在集合中装了好多不同的数据类型的时候,十分容易发生类型转换错误 集合也模仿数组的做法,在创建对象的时候明确数据的数据类型 这种技术被称为:泛型 泛型是一种把类型明确的工作推迟到创建对象或者调用方法的时候才明确的特殊的类型.参数化类型,把类型当做参数一样的传递. 格式:<数据类型> 此处的数据类型只能是引用数据类型 好处: 把运行期的问题提前到了编译期间 避免…
android中正确导入第三方jar包 andriod中如果引入jar包的方式不对就会出现一些奇怪的错误. 工作的时候恰好有一个jar包需要调用,结果用了很长时间才解决出现的bug. 刚开始是这样引用的(eclipse): 右键工程,Build path,java build path, 选择libraries,在右边的按钮中点击“Add External JARs”, 然后选择合适的jar包(大部分人应该会这样做). 结果控制台立刻报错:conversion to dalvik format…
Android webView 正确的用法 引言: 我在网络找了几个例子,基本上都有问题,<Android疯狂讲义>13.4中的源代码也有问题.终于在官网找到正确的用法.点我. 基本用法: 第一步:注册访问网络的权限: <uses-permission android:name="android.permission.INTERNET" /> 第二步:加载页面 webview.loadUrl("http://slashdot.org/");…
//选择图片,调用图库        bt4.setOnClickListener(new OnClickListener() { @Override            public void onClick(View v) {                Intent intent = new Intent(Intent.ACTION_GET_CONTENT);                intent.setType("image/*");                i…
canvas.drawText("www.jcodecraeer.com", x, y, paint);  x和y参数是指定字符串中心的坐标吗?还是左上角的坐标?这个问题的直观印象应该是左上角的坐标,但是安卓的处理有点另类,我都怀疑安卓的设计者是不是脑壳有问题了.x默认是‘www.jcodecraeer.com’这个字符串的左边在屏幕的位置,如果设置了paint.setTextAlign(Paint.Align.CENTER);那就是字符的中心,y是指定这个字符baseline在屏幕上…
摘要 canvas.drawText(www.jcodecraeer.com, x, y, paint); x和y参数是指定字符串中心的坐标吗?还是左上角的坐标?这个问题的直观印象应该是左上角的坐标,但是安卓的处理有点另类,我都怀疑安卓的设计者是不是脑壳有问题了. x默认是‘www.jcodecraeer.com’这 canvas.drawText("www.jcodecraeer.com", x, y, paint);  x和y参数是指定字符串中心的坐标吗?还是左上角的坐标?这个问题…
在Android 官方开发文档中有一篇文档来介绍如何保存应用的数据,但笔者用过很多程序(从知名的到不知名的)处理的都不是很完美,或者 没有按照Android 开发团队建议的方式去保存他们应用的数据.当一些试用过的软件卸载后,在SDCard中还保留了这些软件的文件目录,时间一长就有很多目录需要手工去清理,并且很难确认那些目录是仍然在使用的 那些目录已经没用了,给用户带来困扰.这里我们来讨论下该如何正确的保存应用的数据. 首先数据分为两种:和应用相关的数据:和应用无关的数据.这里分别介绍: 应用无关…