
android
文章平均质量分 55
freeson_csdn
这个作者很懒,什么都没留下…
展开
-
在Activity的onCreate方法中获取控件宽高的N种方法
在Android开发过程中,有可能遇到在Activity的onCreate方法中获取控件宽高的需求,这时利用view.getWidth()或view.getMeasuredWidth()等方法获取控件的宽高,得到的值总是0。是因为当OnCreate函数发生时,只是提供了数据初始化的机会,此时还没有正式绘制界面。而绘制界面是在OnDraw方法中进行的,此时计算又显得太晚。这时原创 2015-07-15 14:44:30 · 933 阅读 · 0 评论 -
Android利用系统Action裁剪图片大小
Intent intent = new Intent("com.android.camera.action.CROP"); intent.setDataAndType(uri, "image/*"); // 设置裁剪 intent.putExtra("crop", "true"); // aspectX aspectY 是宽高的比例 intent.putExtra("a原创 2016-03-31 13:58:29 · 1425 阅读 · 0 评论 -
android中TextView嵌套在ScrollView中并自由滚动
TextView嵌套在ScrollView中,并且TextView设置有最大显示行数或最大高度时,如果TextView和ScrollView同时出现了同一方向上的滚动条的话,嵌套TextView的滚动将受限,无法正常滚动。此文中采用对TextView设置MovementMethod和Touch事件的方式对TextView的触摸滑动进行处理。原创 2016-02-24 09:19:14 · 1908 阅读 · 0 评论 -
Android中为PopupWindow设置半透明背景的方案(兼容华为手机)
一种设置PopupWindow半透明背景的兼容方案原创 2016-05-17 19:38:05 · 21149 阅读 · 4 评论 -
Android中关于EditText点击事件的响应问题记录
对于EditText,如果通过调用 setOnClickListener方法为其设置了点击事件,要注意此处有一个坑,那就是当当前焦点不在该EditText身上时,第一次的点击事件是不会响应的,即不会回调onClick()方法,之后使EditView获取焦点,再次点击时才会响应点击事件。意思就是说当焦点在所点击的EditText控件身上时,点击事件会响应,不在时就不会响应。可以考虑用Touch事件解原创 2016-05-13 15:34:42 · 7417 阅读 · 4 评论 -
android中关于位移动画TranslateAnimation开始和结束时闪动问题的记录
大家都知道,android下动画效果如果想在动画结束的时候就停留在最后一帧画面上,则可以使用 Animation的setFillAfter(true)来设置一下。但是在实际应用中我们往往会在动画开始或结束时做一些操作,当所做的操作是改变开启动画控件的布局或子控件的显隐状态时,如果处理不当往往会出现闪动问题,下面就我在项目中用到的位移动画分别来分析开始和结束时闪动的问题。原创 2016-05-14 16:09:13 · 11958 阅读 · 1 评论 -
两种解决修改android手机设置中字体大小后系统布局混乱的方法
在android开发中针对字体大小的设置,虽然google推荐使用sp作为字体的单位,但是如果用户在系统设置的”显示“中修改了系统默认的字体大小。就会直接影响到所有sp为单位的字体适配,所以很多app在设置了系统字体后瞬间变得面目全非。针对该问题,大概有两种解决思路:1、不用sp作为系统字体的单位,改用dp;2、重写getResource()方法。原创 2016-04-22 15:07:56 · 10658 阅读 · 0 评论 -
Android MediaPlayer生命周期及状态说明
MediaPlayer的状态转换图也表征了它的生命周期,搞清楚这个图可以帮助我们在使用MediaPlayer时考虑情况更周全,写出的代码也更具健壮性。状态转换图清晰的描述了MediaPlayer的各个状态,也列举了主要的方法的调用时序,每种方法只能在一些特定的状态下使用,如果使用时MediaPlayer的状态不正确则会引发IllegalStateException异常。转载 2016-06-01 17:56:29 · 5656 阅读 · 0 评论 -
android中判断关于文本展示是否出现省略号的判断
对于一些文本展示类需求,经常会要求设置最大展示行数(maxLines),当文本长度大于要展示的最大内容时出现省略号,同时根据是否出现省略号做一些其他操作,比如显示"全文"等字眼,然后要求点击全文查看全部内容。这个时候就需要判断文本是否已经溢出最大展示量,下面提供自己的一种实现方法。原创 2016-07-11 19:16:38 · 2854 阅读 · 0 评论 -
android adb命令查看当前正在运行的应用的任务栈
adb shell dumpsys activity原创 2016-07-06 10:30:16 · 7208 阅读 · 0 评论 -
关于selector点击区域放大问题的解决
关于selector点击区域放大问题的解决原创 2016-07-06 15:53:36 · 1392 阅读 · 0 评论 -
Android中纠结的短信长度
一条短信是可以输入70个中文字符或160个ASCII字符。转载 2016-07-08 14:03:54 · 1195 阅读 · 0 评论 -
优秀站点记录
1、泡在网上的日志2、wan Android3、android studio中文社区4、litesuits.com5、全科-不安分的码农6、做好现在的事儿原创 2016-08-02 17:11:41 · 338 阅读 · 0 评论 -
android app 构建过程
The build process of a typical Android app module翻译 2016-10-10 16:20:13 · 555 阅读 · 0 评论 -
WebView中常见问题总结
最近在项目中遇到对WebView的需求应用,在开发中遇到了几点问题,记录下来以便不时之需。 1、WebView中获取网页标题的问题;2、加载百度地图出现空白页问题;3、页面返回资源释放问题;4、自定义错误页面问题;5、关于有重定向页面时执行goback()方法无法正常后退的问题;6、ssl链接访问时出现空白页的问题原创 2015-11-20 19:41:08 · 3087 阅读 · 0 评论 -
属性动画(Property Animation)执行过程
属性动画执行过程简析原创 2016-11-14 17:58:10 · 1277 阅读 · 0 评论 -
Android自定义进度框
有时候,为了适应项目中的统一风格,或者优化进度框的显示效果,我们需要定义自己的进度框显示效果,下面实现一种可添加自己Logo的圆形旋转进度框,代码如下:1、自定义LoadingDialog类继承Dialog:package com.example.loadingdialog.view;import com.example.myloadingdialog.R;import andro原创 2015-07-21 11:01:57 · 493 阅读 · 0 评论 -
Android开发中获取屏幕宽高的几种方法
Android开发过程中经常会遇到获取手机屏幕宽高的需求,下面就获取屏幕宽高的方法总结如下: 方法1:利用WindowManager获取int screenWidth = getWindowManager().getDefaultDisplay().getWidth(); // 屏幕宽(像素,如:720px) int screenHeight = getWindowMana原创 2015-07-14 13:54:16 · 5691 阅读 · 0 评论 -
Android中的自定义样式
在进行Layout布局文件的开发过程中,有时候会重复设置某一属性集合(即多个控件设置的属性都一样),这时候为了简化代码,可将重复的属性集抽取成一个样式(style),具体操作为:在res/values/styles.xml文件中定义样式: center_vertical 7dip 10dip wrap_conte原创 2015-07-14 14:26:40 · 417 阅读 · 0 评论 -
android Home键的监听
Android对屏幕下方常用的三个按键消息处理是不一致的:1、菜单按键的消息在onCreateOptionsMenu、onKeyDown或onKeyUp方法中接收;2、返回按键的消息可以在onBackPressed、onKeyDown或onKeyUp方法中接收。3、对于Home按键消息的处理,既不能通过onKeyDown、onKeyUp接收到,android也没有提供专有的方法原创 2015-07-14 16:58:10 · 661 阅读 · 0 评论 -
在Activity中判断横竖屏的切换
在继承了Activity的类中,可以通过重写onConfigurationChanged方法来判断屏幕的朝向 @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); if (this.getR原创 2015-07-14 16:39:16 · 776 阅读 · 0 评论 -
android中px和dp的相互转换
/** * 根据手机的分辨率从 dip 的单位 转成为 px(像素) */ public static int dip2px(Context context, float dpValue) { final float scale = context.getResources().getDisplayMetrics().density;原创 2015-07-14 16:32:13 · 269 阅读 · 0 评论 -
判断手机网络连接状态
注释:获取手机的网络状态信息需要添加权限 /** * 检查网络是否连接 * @param context * @return */ public static boolean checkNet(Context context) { // 检查WIFI boolean isWIFI = isWIFIConnection(context); // 检查MO原创 2015-07-14 14:40:19 · 840 阅读 · 0 评论 -
ListView的Item中子控件抢占焦点的两种解决办法
当为ListView的Item自定义布局时,如果布局中包含可获取焦点的子控件(诸如ImageButton,Button,CheckBox等子控件,也可以说是Button或者Checkable的子类控件),就会出现子控件抢占焦点的问题,即焦点被子控件截获,Item的点击事件将无法响应。提供两种简单的解决办法: 1、在自定义布局的根部局容器中添加 android:des原创 2015-07-13 16:04:08 · 2687 阅读 · 0 评论 -
Android中自定义弹窗提醒控件
Android中原生的Dialog弹窗提醒控件样式单一,有时候并不能满足我们的项目需求,而且一个工程里面有时候会在多处都用到弹窗提醒的功能,代码会出现大量的冗余,工作之余,就自己实现了这么一个弹窗提醒控件。自定义控件继承自我们的Dialog,样式自定义,弹窗中的文字可通过数组参数初始化,Item个数实现了动态添加,和数组长度一致。对话框底端可展示一个Item(如:确定)或两个Item(如:确定原创 2015-07-17 14:06:44 · 2387 阅读 · 0 评论 -
android中返回键的监听
android中对返回键的监听相对比较简单,方法也比较多,可分别通过重写dispatchKeyEvent(KeyEvent event)、onKeyDown(int keyCode, KeyEvent event)、onKeyUp(int keyCode, KeyEvent event)和onBackPressed() 方法监听返回键,但是这四种方法有一个严格的执行顺序,如果同时重写了原创 2015-07-15 09:36:27 · 20995 阅读 · 0 评论 -
Android获取状态栏和标题栏的高度
1.Android获取状态栏高度: decorView是window中的最顶层view,可以从window中获取到decorView,然后decorView有个getWindowVisibleDisplayFrame方法可以获取到程序显示的区域,包括标题栏,但不包括状态栏。于是,我们就可以算出状态栏的高度了。Rect frame = new Rect();getWi原创 2015-07-14 16:50:48 · 361 阅读 · 0 评论 -
Android中利用代码去除标题栏
// 去除标题, 必须在setContentView 方法前调用requestWindowFeature(Window.FEATURE_NO_TITLE); // 去除标题原创 2015-07-14 14:36:20 · 353 阅读 · 0 评论 -
多线程断点下载的代码实现
import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.InputStream;import java.io.InputStreamReader;import java.io.RandomAccessFile;import java.net原创 2015-01-28 15:44:43 · 403 阅读 · 0 评论 -
android中进入界面时软件盘默认隐藏的设置方法
在安卓开发过程中,如果某一layout布局文件中包含EditView等可编辑的控件并且默认是第一个获取焦点时,进入界面的时候软键盘就会弹出。但是,有时我们并不希望软键盘弹出,这时,可以在layout布局文件的根布局下添加如下代码(添加到默认获取焦点的EditView等空间的前面):<LinearLayout android:layout_width="0px" android:原创 2015-07-15 15:57:46 · 1245 阅读 · 0 评论 -
android 获取SD卡状态信息
/** 获取存储卡路径 */ File sdcardDir=Environment.getExternalStorageDirectory(); /** StatFs 看文件系统空间使用情况 */ StatFs statFs=new StatFs(sdcardDir.getPath()); /** Block 的 size*/ Long blockSize=statFs.getBlock原创 2015-07-14 16:46:44 · 522 阅读 · 0 评论 -
android 获取mac地址
private String getLocalMacAddress() { WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); WifiInfo info = wifi.getConnectionInfo(); return info.getMacAddress();原创 2015-07-14 16:44:13 · 479 阅读 · 0 评论 -
使用SharedPreferences读写数据
使用SharedPreferences保存数据,其背后是用xml文件存放数据,文件存放在/data/data//shared_prefs目录下: SharedPreferences sharedPreferences = this.getSharedPreferences("mydata", Context.MODE_PRIVATE); Editor edit原创 2015-07-14 14:30:04 · 701 阅读 · 0 评论 -
Android开发中自定义Toast
/** * 窗体管理者 */ private WindowManager wm; private View view; long[] mHits = new long[2];//用来处理双击事件,同理可处理N击事件 /** * 自定义土司 * @param context * @param showMsg */ public void myToast(Conte原创 2015-07-14 14:16:39 · 477 阅读 · 0 评论 -
关于android客户端中webview调试的方法
远程调试android设备中的web页面,HTML / CSS / JavaScript。原创 2016-11-22 16:11:58 · 4180 阅读 · 0 评论