android 开发必知的50个诀窍
空心菜的爱
你花五六块买个盒饭吃,觉得很节省,有人在路边买了七毛钱馒头吞咽后步履匆匆;你八点起床看书,觉得很勤奋,上微博发现曾经的同学八点就已经在面对繁重的工作;你周六补个课,觉得很累,打个电话才知道许多朋友都连续加班了一个月。亲爱的,你真的还不够苦,不够勤奋和努力。
展开
-
double类型保留两位小数
DecimalFormat df = new DecimalFormat("######0.00"); double d1 = 3.23456 double d2 = 0.0;double d3 = 2.0;df.format(d1); df.format(d2); df.format(d3); 结果:3.230.00 2.00转载 2015-05-30 09:06:17 · 721 阅读 · 0 评论 -
android 访问系统通讯录得到联系人数据
/** * 跳转去获取联系人电话 * * @param activity * activity对象 */ private void getPhone(Activity activity) { Intent intent = new Intent(Intent.ACTION_PICK, ContactsContract.Contacts.CONTEN原创 2015-09-24 09:48:49 · 741 阅读 · 0 评论 -
Android 中overridePendingTransition方法的使用,来设置界面跳转的动画
这个很简单.主要的就是写下动画,还有就是这个方法记得放在startActivity和finish();的后面,让他们得以立即执行界面布局:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"原创 2015-11-13 09:57:09 · 2355 阅读 · 0 评论 -
Android 如何优雅的获取屏幕的高度和宽度
import android.app.Activity;import android.util.DisplayMetrics;public class BaseTools { /** * 获取屏幕设备信息描述对象 * * @param activity * @return */ public final static DisplayMetrics getWindo原创 2015-11-12 10:44:10 · 526 阅读 · 0 评论 -
android 实现一个布局或者view 有上边框 下边框或者 左边框 右边框 或者单一边框的实现
代码中都有详细的解释,这里就不多说了,在使用的时候直接设置为background就行了 <!-- 接着再定义一个填充区域的 颜色,并给该颜色 设置内边距,达到遮住上面背景但又没有遮挡住全部的目的 android:top="1dp" android:bott原创 2015-08-27 10:00:51 · 3128 阅读 · 0 评论 -
【Android开发经验】我们要友好的告诉用户,程序要崩溃了
原帖地址:http://blog.csdn.net/zhaokaiqiang1992虽然我们的程序在正式上线之前,都会经过严格的测试,从而保证程序的健壮性和良好的用户体验,但是,一个人的测试或者是几个人的测试团队,都不能和上万甚至数十万的用户相比。因此,前期刚上线的程序在用户手里被玩崩了,也是很常见的事,但是,如果我们不做特殊处理,系统自带的程序崩溃提示真的太吓人了,用户看到之转载 2015-09-29 17:36:07 · 504 阅读 · 0 评论 -
android 短信验证码自动填写的两种方式
实际应用开发中,会经常用到短信验证的功能,这个时候如果再让用户就查看短信.然后再回到界面进行短信的填写,难免有多少有些不方便,作为开发者.本着用户至上的原则我们也应该来实现验证码的自动填写功能,实现短信验证码自动填写有两种方式:第一种,实现ContentObserver,把我们自己的Observer注册到短信服务,短信应用收到新的短信的时候会发送给我我们自己的Observer,然后我们在自己的原创 2015-09-28 10:23:18 · 5979 阅读 · 0 评论 -
android 上面一个listview下面一个button,让button一直处于listview的下方
在刚开始做这个问题的时候.我是直接写了一个相对布局,布局里面上面的是listview,button在listview的下方.这样,在listview没有数据,或者只有几个数据的时候,显示良好.没有数据的时候button在最上方.只有几个数据的话,button就在listview的下方.显示的也很和谐.但是当listview的数据变多了之后,button就划出布局,再也看不到了....困扰了一会原创 2015-09-08 18:06:01 · 4481 阅读 · 0 评论 -
android activity的变量是什么时候清空的呢?
最近没事,想起一个问题,activity中的变量到底是什么时候进行清空的呢?经过测试发现 成员变量都是在activity的ondestroy执行之后就清空了.但是静态的变量属于整个app,当这个activity被销毁的时候,该activity中的静态变量并没有被销毁,只有当app的进行不在运行的时候,静态变量才会被清除,结束本程序的线程的方法是android.os.Process.killProc原创 2015-09-10 10:10:17 · 2039 阅读 · 0 评论 -
android listview添加footview,有的手机可以正常显示,有的则不显示
// 好吧..本来这段代码是放在setadapter之后,导致有的手机可以显示footview,有的手机不可以显示footview // 现在.把添加footview的操作,放在setadapter之前就可以解决这个问题了 // 给满减的listview添加footview View view = View.inflate(mc, R.layout.yellow_add_favoura原创 2015-09-09 18:05:08 · 1099 阅读 · 1 评论 -
android dialog四周的黑边消除
if (mDialog == null) { mDialog = new AlertDialog.Builder(mContext) .setIcon(R.drawable.ic_launcher) .setTitle(R.string.app_name).create();//icon和title都可以不设置的 } mDialog.setView(mView,转载 2015-09-09 12:03:33 · 656 阅读 · 0 评论 -
adapter 中的viewholder的个人见解笔记
viewholder存在理由就是让我们重复利用已经加载过的view,节约时间,提高效率1.省去了每一次加载布局的时间2.省去了每一次findviewbyid的时间每一个adapter并不是只有一个viewholder对象,而是每一个view都有一个viewholder对象原创 2015-08-31 12:27:24 · 471 阅读 · 0 评论 -
android SwipeRefreshLayouth和ListView冲突解决
在最近的项目中,遇到下拉刷新的需求..第一时间就想到了谷歌自家的SwipeRefreshLayouth,以前用过这个东西,在这里面放一个listview或者gridview的时候效果很不错.当初写demo的时候也是这么写的.但是当真正使用他的时候,就发现了尴尬的事情.例如..我的SwipeRefreshLayouth里面上方有两个按钮.按钮下面才是listview,这个时候如果手指往上滑,去查看更原创 2015-09-24 12:47:00 · 904 阅读 · 0 评论 -
Eclipse 修改默认的author 作者
最近在用公司的电脑.类注释上作者全是lenovo,很烦,修改下后心情顿时舒畅了1. 在eclipse.ini中添加-vmargs-Duser.name={author name}记得一定要在-vmargs之后,否则无效。2. 设置eclipse参数windows-->preference Java-->Code Style-->Code Templates co转载 2015-11-18 10:27:29 · 708 阅读 · 0 评论 -
Android Intent安全性检查
在平时的开发中,跳转我们自己写的activity的时候,一般都是通过显式intent进行跳转.所以不用做什么安全性检查但是当我们使用隐式意图来进行调起别的应用的activity时.就需要检查安全性了,否则activity不存在.可是会使程序崩溃的哟检查intent安全性有以下两种方式:第一种:/** * 检测 响应某个意图的Activity 是否存在 * @param co原创 2016-11-02 13:37:04 · 1124 阅读 · 0 评论 -
Android ViewSwitch自适应显示的view的高度
ViewSwitch继承于FrameLayout,在正常的情况下.他的高度依赖于就是子view中最大高度的view的高度例如:第一个view高度20dp 第二个高度是100dp 那么ViewSwitch的高度就是100dp验证代码:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"原创 2016-11-29 10:16:52 · 2153 阅读 · 1 评论 -
Android Scrollview嵌套RecyclerView导致滑动卡顿问题解决
一个比较长的界面一般都是Scrollview嵌套RecyclerView来解决.不过这样的UI并不是我们开发人员想看到的,实际上嵌套之后.因为Scrollview和RecyclerView都是滑动控件.会有一点滑动上的冲突.导致滑动起来有些卡顿.这个时候.我们重写一下LayoutManager就行了例如: LinearLayoutManager linearLayoutManager原创 2016-10-08 10:14:28 · 11406 阅读 · 5 评论 -
Android NagivationView设置了监听无效?DrawLayout你必须知道的东西!!!
DrawerLayout组件同样是V4包中的组件,也是直接继承于ViewGroup类,所以这个类也是一个容器类。使用DrawerLayout可以轻松的实现抽屉效果,使用DrawerLayout的步骤有以下1几点:1)在DrawerLayout中,第一个子View必须是显示内容的view,并且设置它的layout_width和layout_height属性是match_parent.原创 2016-03-10 22:19:10 · 854 阅读 · 0 评论 -
android 简单实现透明栏
我们都知道IOS上的app和上面的状态栏是一个颜色的,给人一种浑然一体的感觉.看起来很舒服,那么.在android上这个功能是怎么实现的呢?下面给大家介绍一种简单的方法来实现这种效果先上效果图:我们的布局文件:<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:原创 2016-03-02 12:03:06 · 622 阅读 · 0 评论 -
Android ListView 设置选中item高亮状态
以前没有怎么在意listview设置选中状态这个问题.但是真当想用的时候,实实在在的发现了一些问题本来以为只要简单的写个颜色 selector就可以达到目的.后来发现的确是错了先说下我走过的弯路,本来以为listview的setSelection方法就能把该item设置为选中的高亮状态.没想到这个方法仅仅只是把该项滑动到屏幕的最顶端而已先把颜色 selector 以及布局贴一下原创 2015-12-08 11:59:10 · 12085 阅读 · 1 评论 -
android 获取当前设备的ip地址 mac地址 设备号 手机号 运营商信息
获取ip地址的时候,如果不注册权限的话,也不会报错,但是不会获取到ip地址(表示这个问题很蛋疼)获取mac地址和设备号的时候,需要注册权限.不然会报错所以权限很重要.记得加权限,记得加权限,记得加权限/** * 2015年12月7日TODOimgod */package com.bodao.aibang.utils;import java.net.InetAddress;i原创 2015-12-07 11:52:06 · 3721 阅读 · 0 评论 -
android 设置EditText只可以输入字母或者数字
在以前的项目中,验证码都是纯数字的,可是现在做的竟然有字母有数字的验证码,在给EditText设置输入方式的时候就有点尴尬,设置number的话 字母不能输入,设置字母的话数字不能输入,于是乎 我们可以这么做,把输入方式设置为数字,然后给edittext添加一些限制例如: android:inputType="number" android:digits="1234567890qwer原创 2015-12-23 12:26:16 · 13347 阅读 · 0 评论 -
android textview 中部分内容 颜色 样式 点击事件的设置9
// 文本内容 SpannableString ss = new SpannableString(remindtitle); int stringlength = ss.length(); // 设置0-2的字符颜色 ss.setSpan(new ForegroundColorSpan(Color.RED), 0, 2, Spanned.SPAN_EXCLUSIVE_EXC...原创 2015-08-26 13:08:34 · 1069 阅读 · 0 评论 -
android 动态设置textview 中划线 下划线
package com.example.testtextview;import android.app.Activity;import android.app.ActionBar;import android.app.Fragment;import android.graphics.Paint;import android.os.Bundle;import android.view.原创 2015-12-01 16:31:10 · 1279 阅读 · 0 评论 -
Android SDk Manager 目前可用的更新ip
网址:mirrors.neusoft.edu.cn端口:80更改后:原创 2015-11-24 17:42:28 · 518 阅读 · 0 评论 -
android checkbox 未选中状态 已选中状态 替换成自己的图片
效果图:未选中状态:选中状态:使用步骤:1.创建自己的selector 2.在style中加入自己的复选框的样式: @drawable/mycheckboxselector 3.在自己的checkbox上设置style属性:<RelativeLayout xmlns:android="htt原创 2015-08-01 11:25:14 · 4343 阅读 · 0 评论 -
android 自定义水平和圆形progressbar 只定义一些style就可以
效果图:修改progressbar 让他满足自己的需求一般来说只修改一下,progressbar的style就可以满足需求了:activity代码:仅仅显示一个布局而已package com.example.testcustomprogressbar;import android.app.Activity;import android.os.Bundle;imp原创 2015-08-13 13:54:38 · 1048 阅读 · 0 评论 -
android 实现listview高固定,且不滑动
在实际的开发中,可能会遇到需要一个listview来承载内容,并且这个listview只显示前几项,全部的内容都是在点击更多的时候进行查看这个时候我们就有必要来设置一下listview不让他滑动了,但是我们还需要可以点击listview的显示的那几项,所以不能设置enable为false,通常这样的情况我们都是知道每一个item的高的,这个时候我们进行设置listview的高然后在代码中为原创 2015-03-24 16:35:25 · 770 阅读 · 0 评论 -
android 代码中设置edittext的inputtype问题
在使用edittext的过程中,如果我们在代码中,仅仅只设置为editText1.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);的话,会不会有任何作用的然后这里有一个地方需要引起我们的注意,,需要注意XML部分参数值在Java代码中设置时要达到相同效果可能java中参数需要由多个参数组合使用。使用代码设置类似XML效果参数原创 2015-04-02 10:25:10 · 4145 阅读 · 2 评论 -
android DatePickerDialog TimePickerDialog set方法执行的不规律解决以及 DatePicker TimePicker的使用
在我们的实际开发过程中,可能会遇到需要点击个按钮弹出一个对话框让我们选择时间什么的,这个时候我们肯定会首先想到DatePickDialog和TimePickerDialog这两个对话框可是在使用的过程中,我们发现这两个对话框并没有我们想象 的那么得心应手,例如我们点击按钮,弹出来一个DatePickerDialog,这个dialog里面有一个dateset的建通方法,当我们点击确定的时候,这个原创 2015-03-31 17:19:34 · 968 阅读 · 0 评论 -
android 实现点击返回键返回主界面当前界面不销毁
方法就是监听我们的点击事件,然后在我们的点击事件中进行相关的操作@Override public void onBackPressed() { Intent i = new Intent(Intent.ACTION_MAIN); // i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); //如果是服务里调用,必须加入new task标识 i.ad原创 2015-03-23 18:01:28 · 4522 阅读 · 0 评论 -
android listview嵌套时,显示不全和不能滑动的解决
在listview嵌套listview的过程中,如果我们不写一点特殊的操作的话,可能子listview会显示不全,并且无法滑动,那么应该怎么解决呢1.子listview继承listview,然后重写onmeasure方法,在里面手动的去计算高度,然后传给super方法,这样我们的子listview的item就可以全部显示出来了代码:@Override protected void o原创 2015-03-28 15:29:20 · 1831 阅读 · 0 评论 -
android 开发必知的50个诀窍 2.2 Stubview的使用
在开发应用程序的时候,经常会遇到这样的情况,会在运行时动态根据条件来决定显示哪个View或某个布局。那么最通常的想法就是把可能用到的View都写在上面,先把它们的可见性都设为View.GONE,然后在代码中动态的更改它的可见性。这样的做法的优点是逻辑简单而且控制起来比较灵活。但是它的缺点就是,耗费资源。虽然把View的初始可见View.GONE但是在Inflate布局的时候View仍然会被Infl原创 2015-03-17 16:47:11 · 1272 阅读 · 0 评论 -
android 开发必知的50个诀窍 2.1 include的使用
当我们好多activity都使用类似的界面时,我们就可以考虑把那个布局作为一个单独的布局文件,然后我们在使用到的地方直接include就行这样就避免了好多的代码量这里面有一个注意点:如果我们单独写的那个界面有一些属性参数我们需要覆盖,直接在引用他的地方修改是行不通的, 此时我们必须在引用这个布局的地方同时重写被引用布局的宽度和高度才会使我们的引用生效,所以我们在写这个布局的时候最好原创 2015-03-16 17:05:24 · 544 阅读 · 0 评论 -
android 开发必知的50个诀窍 1.
最近在看android 开发必知的五十个诀窍,在自己的博客里面记录一下,免得以后用到1.如何使用线性布局,让一个按钮居中显示,而且宽度为父布局的一半?这个用到的知识点以前都用过,但是这些知识点长时间不用之后,很容易忘记我们可以使用weight(权重)来解决这一问题首先我们给父布局设置总的权重 weightsum = 2;并且这个父线性布局的方向为水平接着原创 2015-03-16 16:40:49 · 545 阅读 · 0 评论 -
android 实现edittext的动态可编辑和不可编辑
在实际开发过程中,可能会遇到edittext的编辑和不可编辑,我们不想让用户修改的东西不让他进行修改.而有权限修改的时候就可以直接修改,话不多说直接上代码editText.setFocusable(false);和editText.setFocusableInTouchMode(false);设置不可编辑状态;editText.setFocusableInTouchMode(tru原创 2015-03-27 18:16:34 · 1037 阅读 · 0 评论 -
android 实现密码的显示和隐藏
在我们的实际开发过程中可能会遇到一个密码输入框,设置他显示和隐藏密码的这个需求谷歌已经帮我们实现好了方法,我们只要会调用就行了.布局:<EditText android:id="@+id/et_editpawd_old" android:layout_width="wrap_content" android:layout_height="原创 2015-03-27 17:28:51 · 1019 阅读 · 0 评论 -
android 设置透明度
在一些弹出对话框中我们可能会有这样的需求,就是把这个弹出框的背景设置成半透明的,我们可能会首先想到去相应的xml文件中去设置alpha,可是我们得出的结果是,不仅仅是背景透明了,连同上面的控件也都是透明的了,这个时候我们可以设置他的背景颜色,例如0x88000000,这样的话背景就是白色半透明的了,但是上面的控件并没有透明,这就是我们想要的效果了原创 2015-03-27 10:46:25 · 550 阅读 · 0 评论 -
android 实现edittext输入内容后可以点击右侧小图片进行清除内容
在实际的开发过程中,我们会遇到输入密码输入搜索汉字这样的需求,然后当我们输入了字符之后,又不想一下一下的后退删掉,这时候就需要我们的旁边的小按钮来实现了我们要实现的效果是这个样子的.点击小X号就可以把我们的edittext的内容清空,本来想应该是一个editext然后他的drawableRight是一个图片,但是这个图片我们不可以点击,这显然不能满足我们的需求.然后就进行了思考,该原创 2015-04-01 15:48:51 · 1988 阅读 · 0 评论 -
android 修改我们应用的主题
在我们的实际的开发过程中我们可能需要使用没有titlebar的主题,我们可以在配置文件中,修改application的theme达到效果,也可以在自己的style文件里面的appTheme里面进行继承相应的主题,达到效果<application android:allowBackup="true" android:icon="@drawable/ic_launc原创 2015-04-15 13:59:58 · 789 阅读 · 0 评论