Android
tao_zi7890
这个作者很懒,什么都没留下…
展开
-
android动画资源重命名
@echo offsetlocal enabledelayedexpansionset n=1for /f %%i in ('dir /b *.png') do (ren "%%i" home_space_entry_animation!n!.pngset /a n+=1)echo 批量重命名完成!pause艹,动画太蛋疼了,这些搞动画的肯定没做过移动app...原创 2020-04-14 16:28:11 · 192 阅读 · 0 评论 -
集合排序的方法
/** * 消息重新排序, * 按照msgID,由小到大的顺序 * 聊天窗口适用的排序方式 */ class MessageSort : Comparator<Message> { override fun compare(msg1: Message, msg2: Message): Int { ...原创 2020-02-28 16:18:47 · 155 阅读 · 0 评论 -
viewPager指示器滑动效果
override fun onPageSelected(pos: Int) { currentPagerItem = pos var selectedColor = ContextCompat.getColor(baseActivity, R.color.home_pager_text_selected) var unselectedColor...原创 2020-02-28 14:11:32 · 246 阅读 · 0 评论 -
新手引导的实现
/** * 首页的新手引导 */ private fun checkShowUserGuide() { if (!PreferencesUtil.homeNewUserGuideHasShow) { home_avatar_parent.postDelayed ({ home_avatar...原创 2019-10-26 16:06:16 · 274 阅读 · 0 评论 -
TextWatcher引起activity内存泄露的问题
TextWatcher会引起activity内存泄露。EditText设置了addTextChangedListener的界面,要在onDestroy里调用removeTextChangedListener释放掉。原创 2014-06-18 17:18:03 · 3409 阅读 · 0 评论 -
android string.xml里的空格字符
在string.xml定义字符串的时候经常要用到空格, 直接用键盘敲的话不知道是几个空格,经常看错了,导致误删。如果用 来替代空格的话,就好很多。另外使用%1$s,%1$d可以在一个字符串里定义多个统配字符。原创 2014-06-14 16:27:44 · 42931 阅读 · 0 评论 -
解决scrollView中嵌套编辑框导致不能上下滑动的问题
EditText设置maxLines之后,文本行数超过maxLines,会网上折叠,上下滑动可以浏览所有文本。若EditText外层有scrollView,在EditText上下滑动,不会像正常情况那样上,只会滑动了scrollView。解决办法是:mEt_content.setOnTouchListener(this); // 解决scrollView中嵌套EditText导致不原创 2014-06-13 13:45:30 · 10368 阅读 · 1 评论 -
View2紧跟view1,并且不被view1挤出屏幕
android:layout_width="match_parent" android:layout_height="wrap_content" android:gravity="center_vertical" android:orientation="horizontal" > android:layout_width="wrap原创 2014-06-05 17:56:03 · 3994 阅读 · 2 评论 -
alwaysRetainTaskState笔记
1.android:allowTaskReparenting 这个属性用来标记一个Activity实例在当前应用退居后台后,是否能从启动它的那个task移动到有共同affinity的task,“true”表示可以移动,“false”表示它必须呆在当前应用的task中,默认值为false。如果一个这个Activity的元素没有设定此属性,设定在上的此属性会对此Activity起作用。例如在一个应用中转载 2014-02-27 18:40:44 · 17429 阅读 · 2 评论 -
Java上的try catch并不影响性能(转)
最近因为担心自己开发的库不稳定,会影响到接入产品的正常运行,在代码的不少地方都加了一层try catch,主要是为了避免自己的一些异常抛出导致,应用crash,捕获的异常也并没有做什么特别的处理,只是在log中输出该异常的信息。try catch多了后,就开始担心会不会影响性能,以前学C或C++的时候好像曾经被警告过要尽量少使用try catch,好像是在压栈的时候会更消耗神马的,其实说真的并没有转载 2013-12-26 15:49:49 · 23989 阅读 · 6 评论 -
启动apk的3种方法
转载自 http://www.open-open.com/lib/view/open1328536689889.html方法一:最直接的就是知道apk的包名和启动类名, 直接启动方法二:如果只知道包名,在这种情况下通常也可以启动,通常调用public abstract Intent getLaunchIntentForPackage (String packageName)原创 2013-07-05 17:55:58 · 2171 阅读 · 0 评论 -
判断一个Bitmap图像是否是.9图
见BitmapFactory的源码中byte[] np = bm.getNinePatchChunk(); final boolean isNinePatch = np != null && NinePatch.isNinePatchChunk(np);原创 2013-07-11 10:13:18 · 2825 阅读 · 0 评论 -
启动文件选取的按钮
Intent intent = new Intent(Intent.ACTION_GET_CONTENT); intent.addCategory(Intent.CATEGORY_OPENABLE); intent.setType("image/*"); startActivityForResult(Intent.createChooser(i原创 2013-07-09 19:09:02 · 789 阅读 · 0 评论 -
Android Memory Management, OutOfMemoryError
Android Memory Management, OutOfMemoryError Android框 架强制每个进程的24 MB内存限制。在一些旧的设备,如在G1,限制为16 MB 更低,更重要的是,由位图使用的内存限制。处理图像的应用程序,它是很容易达到此限制,并获得与OOM 异常死亡 的过程:E / dalvikvm堆(12517):1048576字节外部分配这个 过程中过大的转载 2013-07-09 10:19:55 · 678 阅读 · 0 评论 -
Android网络连接判断与处理
获取网络信息需要在AndroidManifest.xml文件中加入相应的权限。 1)判断是否有网络连接 复制代码 public boolean isNetworkConnected(Context context) { if (context != null) { ConnectivityManager mConn转载 2013-07-09 10:18:25 · 1055 阅读 · 0 评论 -
android获取图片的旋转角度
public static int getExifOrientation(String filepath) { int degree = 0; ExifInterface exif = null; try { exif = new ExifInterface(filepath); } catch (IOException ex) { Log原创 2014-08-20 21:20:48 · 11852 阅读 · 2 评论 -
android:descendantFocusability用法简析
android:descendantFocusability用法简析 开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击每一个item的时候没有反应,无法获取的焦点。原因多半是由于在你自己定义的Item中存在诸如ImageB转载 2014-11-13 15:19:54 · 605 阅读 · 0 评论 -
实现viewPager滑动翻页的指示器效果及动画
实现viewPager指示器和滑动效果,效果如下:技术点:1、整个按钮区域用RadioGroup,实现单选效果2、RadioGroup里放两个LinearLayout,分别显示pager1和pager2的按钮3、LinearLayout里垂直布局,放radioButton,显示图片。底部一个view,显示标签。如果view需要圆角,就用cardView包裹vie...原创 2019-08-30 15:13:37 · 755 阅读 · 0 评论 -
android webView使用
首先定义界面的activity_browser_layout.xml<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent...原创 2019-08-28 11:26:41 · 187 阅读 · 0 评论 -
软键盘显示发送按钮,支持多行
editText.imeOptions = EditorInfo.IME_ACTION_SENDeditText.inputType = TYPE_TEXT_FLAG_MULTI_LINEeditText.setSingleLine(false)editText.maxLines = 40editText.setOnEditorActionListener { v, actionId, ...转载 2019-08-26 17:42:21 · 724 阅读 · 0 评论 -
解决recycleView+scrollView导致recycleView缓存复用失效,和无论怎么滑动firstVIsiablePosition都是返回0的问题
如果页面界面的xml里包含两个recycleView和一个scrollView,root是一个scrollView包含一个垂直的LinearLayout,里面是一个横向的recycleView1,和一个纵向的recycleView2。(布局代码如下)会导致两个问题:1是recycleView的多级缓存复用机制失效,recycleView2会一直是渲染count个item,会导致性能差。...原创 2019-08-26 14:43:09 · 1242 阅读 · 0 评论 -
room使用TypeConverter转换复杂类型或者转换数组的时候,数据库crash
/** * user中的photos字段转换 */open class UserPhotoConverters { @TypeConverter fun stringToObject(value: String): List<String> { val listType = object : TypeToken<List<String...原创 2019-08-26 14:30:07 · 3551 阅读 · 0 评论 -
解决viewPager和recycleView的滑动冲突
viewPager里包含横向的recycleView时,横向滑动recycleView会导致viewPager翻页,解决办法是/** * zivon * 解决viewPager和recycleView的滑动冲突 */class NestedRecyclerView(context: Context, attrs: AttributeSet?) : RecyclerView(conte...原创 2019-08-26 14:23:26 · 1933 阅读 · 0 评论 -
navigation的baseFragment监控软键盘back键
requireActivity().onBackPressedDispatcher.addCallback(this) { onBackPressed()}原创 2019-08-26 14:18:15 · 305 阅读 · 0 评论 -
scrollview recyclerview 自动上滑
scrollview recyclerview 自动上滑今天天气很好我心情也很好2018.04.19 16:47 字数 44 阅读 235评论 0喜欢 0scrollView自动上滑,什么鬼。吓我一跳。1,位scrollview 加入:android:descendantFocusability="blocksDescendants"2,为scrollView中的跟vie...转载 2019-08-24 19:31:07 · 311 阅读 · 0 评论 -
使用Parcelable序列化数据
使用Parcelable序列化数据,1)在使用内存的时候,Parcelable比Serializable性能高,所以推荐使用Parcelable。2)Serializable在序列化的时候会产生大量的临时变量,从而引起频繁的GC。public class MediaPreviewInfo implements Parcelable { public static final int M原创 2017-05-26 17:47:26 · 761 阅读 · 0 评论 -
ListView无障碍识别整个listView,不识别item,设置了setContentDescription也没有用
点击ListView的时候,无障碍识别到的是整个listView,不会读点击的那个item。解决办法是在getView里手动设置:convertView.setFocusable(true);convertView.setFocusableInTouchMode(true);这样就会读item里的值原创 2014-06-18 17:12:28 · 4692 阅读 · 0 评论 -
大端、小端、网络字节序
大端、小端、网络字节序 一、大端、小端"大端"和"小端"表示多字节值的哪一端存储在该值的起始地址处;小端存储在起始地址处,即是小端字节序;大端存储在起始地址处,即是大端字节序;或者说:1.小端法(Little-Endian)就是低位字节排放在内存的低地址端(即该值的起始地址),高位字节排放在内存的高地址端;2.大端法(Big-Endian)就是高位字节排放在内存的低地址转载 2014-11-04 11:00:03 · 727 阅读 · 0 评论 -
Android home键和back键区别
转载自:http://www.cnblogs.com/linjiqin/archive/2011/12/14/2287968.htmlAndroid home键和back键区别back键Android的程序无需刻意的去退出,当你一按下手机的back键的时候,系统会默认调用程序栈中最上层Activity的Destroy()方法来销毁当前Activity,当此Activity又被其转载 2013-07-09 10:08:42 · 3140 阅读 · 0 评论 -
设置Activity永不过期,即不执行onDestroy()
转载自:http://www.cnblogs.com/linjiqin/archive/2011/12/15/2289251.html设置Activity永不过期,即不执行onDestroy()/** * 重写finish()方法 */@Overridepublic void finish() { //s转载 2013-07-09 10:07:43 · 1255 阅读 · 0 评论 -
mapView,GPS需要用到的方法
// Get the Location by GPS or WIFI public Location getLocation(Context context) { LocationManager locMan = (LocationManager) context .getSystemService(Context.LOCATION_SERVICE); Location loca原创 2011-10-26 15:19:50 · 1040 阅读 · 1 评论 -
java时间转换
/** * 将"20111013080000"类型的时间字符串转化成"2011年10月13日"格式的字符串 * * @param time * 需要转化的时间字符串 * @return 如果time为正常的时间格式,则转化成相应格式的时间, 否则返回null */ public static String parseTime1(String tim原创 2011-10-26 15:21:54 · 589 阅读 · 0 评论 -
android中用java代码动态控制activity的大小,位置,透明度
Display display = getWindowManager().getDefaultDisplay(); // 为获取屏幕宽、高 Window window = getWindow();LayoutParams windowLayoutParams = window.getAttributes(); // 获取对话框当前的参数值windowLayoutParams.width =原创 2011-10-21 12:35:01 · 6204 阅读 · 0 评论 -
android中将drawable转换成bitmap
android中将drawable转换成bitmap的方法:public Bitmap drawableToBitmap(Drawable drawable) { /* * Drawable转化为Bitmap */ i原创 2011-08-16 11:29:46 · 3561 阅读 · 1 评论 -
Android 手机端与服务器端通过http交换数据 Json
Android程序需要与服务器端交换数据,如用户在手机上输入账号及密码信息,手机程序要将输入信息提交要服务器端进行账号验证,返回验证结果。例如手机QQ,登陆完成之后,好友列表还需要从服务器端下载到手机端。这些都需要与后台进行通信。 在我的程序中,是定义用json进原创 2011-08-10 17:35:12 · 7345 阅读 · 3 评论 -
通过Resource的Name得到其标识符(Identifier), 即ResourceID
<br />通过Resource的Name得到其标识符(Identifier)<br />利用几句简单的语句可以根据Resource的displayName获得系统中唯一的标识符,程序可以通过标识符获得Resource。<br />源代码:11. intdrawable_id =原创 2010-11-30 14:43:00 · 1122 阅读 · 3 评论 -
用Bitmap加载图片资源时,报错java.lang.OutOfMemoryError: bitmap size exceeds VM budget的解决办法
<br />android系统限制,只给图片分配8兆的内存,超过就崩,你图片几十KB,可能是压缩格式的,转换成bitmap就是本来的大小。<br /> <br />我是在进入apk之后退出,第二次进就报错。我重新onDestroy方法,将所有的bitmap变量都置为null,再用原创 2010-12-06 21:40:00 · 899 阅读 · 0 评论 -
文字中间加横线,过滤字符串中tag
文字中间加横线效果 textView.setText("价格:2.00元"); textView.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG); 一句代码过滤字符串中所有tag标签 private S原创 2010-12-23 14:43:00 · 2838 阅读 · 0 评论 -
从数据文件中读取一段数据,显示到ImageView中
<br />显示图片,将数据字节读取到byte数组data[]里面,<br />然后InputStream is = new ByteArrayInputStream(data); <br />BitMap bmp = BitmapFactory.decodeStream(is原创 2010-11-27 17:45:00 · 759 阅读 · 0 评论 -
android TextView、EditText对部分内容设置颜色、字体、超链接、图片
<br /> 对同一个TextView设置不同的颜色、字体、事件、图片<br /> <br /> TextView txtInfo = new TextView(this);<br /> SpannableString ss = new SpannableString原创 2010-12-23 14:55:00 · 13012 阅读 · 3 评论