android-UI
文章平均质量分 97
_ext
热爱编程。
展开
-
Android卡顿优化
Android系统要求每一帧都要在 16ms 内绘制完成,平滑的完成一帧意味着任何特殊的帧需要执行所有的渲染代码(包括 framework 发送给 GPU 和 CPU 绘制到缓冲区的命令)都要在 16ms 内完成,保持流畅的体验。这个速度允许系统在动画和输入事件的过程中以约 60 帧每秒( 1秒 / 0.016帧每秒 = 62.5帧/秒 )的平滑帧率来渲染。原创 2022-09-18 23:21:46 · 3636 阅读 · 0 评论 -
动画基础
导航条从顶部动画进入屏幕原创 2016-09-19 10:55:45 · 305 阅读 · 0 评论 -
TextView中UrlSpan与文本中的超链接冲突问题
一、 Android的TextView中展示超链接有三种方式: 1. 使用Html.fromHtml(source)方法将html的如下文本转换为android支持的SpannableSpanned spanned = Html.fromHtml("谷歌");textView.append(spanned); 2. 在Java代码中使用UrlS原创 2017-04-11 17:07:48 · 947 阅读 · 0 评论 -
TextView中ClickableSpan与文本自由复制(TextIsSelectable)冲突问题
上一篇文章解决了UrlSpan与文本中url链接识别和设置的问题,超链接可以正常显示了。但由于用户期望TextView中的文章内容可以自由复制,这个需求嘛实现起来就是设置下textView.setTextIsSelectable(true)就可以了。天真的以为没啥问题,版本转测。立马出现一个严重问题,第一次点击超链接打开的网址与实际不符,第二次点击超链接才能打开正确的网址,或者说每次点击超原创 2017-04-11 17:15:04 · 2192 阅读 · 0 评论 -
android如何让控件摆放在屏幕底部
代码如下xml version="1.0" encoding="utf-8"?> xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical"android:layout_width="fill_parent"android:layout_height="fill_par转载 2016-03-15 09:21:10 · 14034 阅读 · 0 评论 -
weight的使用
xml version="1.0" encoding="utf-8"?><!-- android:layout_width="match_parent" 计算出的宽度 = 原来宽度 + 剩余空间中其所占百分比宽度 2/3L = L + (L - 2L) * 1/3 = L - 1/3L = 2/3L android:layout_width="0dp"原创 2016-08-09 14:30:54 · 492 阅读 · 0 评论 -
屏幕适配
重要概念什么是屏幕尺寸、屏幕分辨率、屏幕像素密度?什么是dp、dip、dpi、sp、px?之间的关系是什么?什么是mdpi、hdpi、xdpi、xxdpi?如何计算和区分?屏幕尺寸屏幕尺寸是指屏幕的对角线的长度单位是英寸,1英寸 = 2.54厘米屏幕分辨率屏幕分辨率是指在横纵向上的像素点数单位是px,1px = 1 像素点一般以纵向像素 *原创 2017-05-15 16:38:38 · 307 阅读 · 0 评论 -
DialogFragment被dissmiss()出现Activity的title栏后又消失
问题描述:查看联系人-分享-选择短信-新建短信-在跳转到短信编辑界面前会先显示一个短信框(always)现象:问题分析:1. 当点击取消或者dialog外面时,dialog会正常消失。 当点击新消息时就会短暂显示带有短信的浮动框 2. 通过Android Device Monitor的Hierarchy View发现显示短信的浮动框是DecorView的t原创 2017-08-17 16:30:04 · 1129 阅读 · 0 评论 -
ActionBar中OptionMenu弹出菜单的位置和overflow右边距的调整
ActionBar中OptionMenu的显示以前是显示在overflow的下面,5.0以后显示的位置直接覆盖了overflow图标在这里是通过修改样式的方式来解决显示问题解决方案1. 在values-v21 styles.xml文件中添加 false @color/action_bar_t原创 2017-08-17 16:03:55 · 8782 阅读 · 0 评论 -
SQL的UNION使用
在构造方法中获取资源文件中的资源数值 TypedValue tv = new TypedValue(); context.getTheme().resolveAttribute(android.R.attr.actionBarSize, tv, true); mDefaultTabStripSize = context.getResources原创 2017-09-24 14:41:18 · 483 阅读 · 0 评论 -
ActionBar/Toolbar定制ui
最近项目对ui走查,由于谷歌的那套交互框架已经写好了,系统控件那边对样式定制失败,把锅甩给我们上层,鉴于时间紧,任务重,就没打算对框架级进行修改,单单就ActionBar/Toolbar进行样式修改,在修改的过程中,发现ActionBar/Toolbar这块的坑真多,尤其是各种间距问题。废话不多说了开始正题。 首先上效果图吧: 关于样式这块我也是第一次这么大动作的修改,部门大牛修改样原创 2017-12-04 22:54:48 · 451 阅读 · 0 评论 -
陌生的用法
android:layout_width="match_parent" android:layout_height="?android:listPreferredItemHeightSmall" android:orientation="horizontal" android:showDividers="middle" android:divider="?a原创 2016-08-28 09:18:50 · 601 阅读 · 0 评论 -
自定义ViewGroup考虑padding,margin
在View.java中:public final void measure(int widthMeasureSpec,int heightMeasureSpec){... onMeasure();...}protected void onMeasure(int widthMeasureSpec,int heightMeasureSpec)原创 2017-10-01 10:21:23 · 1203 阅读 · 0 评论 -
仿新浪微博带有加号Tab
LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical"原创 2016-08-08 15:18:09 · 1570 阅读 · 0 评论 -
滑动底部工具条显示与隐藏
public class ScrollerBottomLayoutDelegation { private NestedScrollViewmNestedScroller; private ViewGroup mBottomLayout; private ScrollerBottomLayoutDelegation(NestedScrollView scroller, ViewG原创 2016-08-15 09:19:00 · 1897 阅读 · 0 评论 -
NestedScrolling使用
原博客链接:http://blog.csdn.net/lmj623565791/article/details/52204039/** * http://blog.csdn.net/yanbober/article/details/49904715 Scroller详解及源码浅析 */public class StickyNavLayout extends LinearLayout原创 2016-09-02 18:20:03 · 325 阅读 · 0 评论 -
ListView的条目定位
ListView已到顶部的判断 public boolean isListViewReachTopEdge(final ListView listView) { boolean result=false; if(listView.getFirstVisiblePosition()==0){原创 2016-01-29 18:27:41 · 1006 阅读 · 0 评论 -
Android动画效果——X、Y轴抖动
1. 控件加载动画Animation shakeAnim = AnimationUtils.loadAnimation(Context, 动画资源(R.anim.shake_y));View.startAnimation(shakeAnim); 2. Res的anim文件夹的shake_y.xml文件 android:duration="10转载 2016-03-15 09:21:57 · 643 阅读 · 0 评论 -
Android开发之动画效果浅析(一)
Android开发之动画效果浅析请尊重他人的劳动成果,转载请注明出处:Android开发之动画效果浅析程序运行效果图:Android动画主要包含补间动画(Tween)View Animation、帧动画(Frame)Drawable Animation、以及属性动画Property Animation。下面依次介绍一下各个动画。1. 补间动画(Tween)转载 2016-03-15 09:24:08 · 1098 阅读 · 0 评论 -
仿美团滑动后头部固定源码分析
public class StickyScrollView extends ScrollView { private static final String STICKY = "sticky"; private View mCurrentStickyView; private Drawable mShadowDrawable; /** * 存放tag为st原创 2016-08-29 14:03:43 · 1188 阅读 · 0 评论 -
跟随键盘变化的布局
"1.0" encoding="utf-8"?>LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" androi原创 2016-08-08 16:29:04 · 944 阅读 · 0 评论 -
刻度表盘源码分析
public class DashBoardView extends View { private Context context; // 圆 private Paint mPaint; // 弧 private Paint mPaintArc; // 弧的外接矩形 private RectF rectFArc, rectFArc2;原创 2016-08-29 18:23:53 · 593 阅读 · 0 评论 -
开源中国源码分析(二)
动弹详情表情键盘的分析:TweetDetailActivity.java的initWidget()方法中开始阅读KeyboradInputDelegation.java的静态方法中填充了评论工具条的布局在KeyboradInputDelegation#showEmoji()方法中实例化了帧布局控件和Emoji图片控件接着实例化表情键盘所在的Fragment设置了点击监听器【用于监听原创 2016-08-22 18:18:26 · 873 阅读 · 0 评论 -
开源中国源码分析(一)
咨讯详情页面分析布局页面文件fragment_general_news_detail.xml布局文件中包含上滑评论条隐藏,下滑评论条显示相关推荐、相关评论布局是通过继承LinearLayout再填充marge布局页面相关推荐布局文件lay_detail_about_layout.xml,看运行效果貌似是ListView,其实是LineartLayout,由DetailAbout原创 2016-08-19 18:21:16 · 4872 阅读 · 0 评论 -
ListView中getChildAt(index)的使用注意事项
1.原理 在很多时候ListView列表数据不需要全部刷新,只需刷新有数据变化的那一条,这时可以用getChildAt(index)获取某个指定position的view,并对该view进行刷新。 注意:在ListView中,使用getChildAt(index)的取值,只能是当前可见区域(列表可滚动)的子项! 即取值范围在 >= ListView.getFirstVisibl转载 2016-01-29 18:36:21 · 503 阅读 · 0 评论