Android--UI设计
非著名程序员
这个作者很懒,什么都没留下…
展开
-
MeasureSpec介绍及使用详解
一个MeasureSpec封装了父布局传递给子布局的布局要求,每个MeasureSpec代表了一组宽度和高度的要求。一个MeasureSpec由大小和模式组成。它有三种模式:UNSPECIFIED(未指定),父元素不对子元素施加任何束缚,子元素可以得到任意想要的大小;EXACTLY(完全),父元素决定子元素的确切大小,子元素将被限定在给定的边界里而忽略它本身大小;AT_MOST(至多),子元素至多原创 2012-05-27 13:12:09 · 1488 阅读 · 0 评论 -
用Fragment实现如新浪微博一样的底部菜单的切换
像我这个有强迫症的人来说,自从TabActivity抛弃之后,再使用看到一个个警告和一条条划着的横线,心里很不舒服,现在终于下定决心用Fragment来替换掉TabActivity了!我的 研究成果如下:首先是MainActivity,它需要继承FragmentActivity(这里是指:版本是3.0之前的继承FragmentActivity,3.0版本之后的继承Activity就可以),原创 2013-07-25 16:14:20 · 49186 阅读 · 45 评论 -
滑动菜单栏之开源项目SlidingMenu的使用
一、SlidingMenu简介 相信大家对SlidingMenu都不陌生了,它是一种比较新的设置界面或配置界面的效果,在主界面左滑或者右滑出现设置界面效果,能方便的进行各种操作。很多优秀的应用都采用了这种界面方案,像facebook、人人网、everynote、Google+等等。如下图所示: Google+界面效果图转载 2013-09-04 17:55:47 · 5335 阅读 · 0 评论 -
Android学习笔记(四)之碎片化Fragment实现仿人人客户端的侧边栏
其实一种好的UI布局,可以使用户感到更加的亲切与方便。最近非常流行的莫过于侧边栏了,其实我也做过很多侧边栏的应用,但是那些侧边栏的使用我都不是很满意,现在重新整理,重新写了一个相对来说我比较满意的侧边栏,其中运用的就是android3.0版本之后新加的Fragment碎片化,碎片化的使用将来也是一个趋势,所以通过我这个程序你既可以学到侧边栏,也能让你更加熟悉碎片化的使用,一举两得的事。哈哈……废话原创 2013-10-04 20:19:54 · 14769 阅读 · 13 评论 -
Android学习笔记(三)之带有侧边索引的快速查找(跟带字母索引查找的通讯录差不多)
喜欢另辟蹊径的我,在这里废话不多说了,直接上代码和图片了。效果图如下:第一步:MainActivity的代码如下:package net.loonggg.test;import java.util.ArrayList;import java.util.Arrays;import java.util.HashMap;import java.util.List;import原创 2013-08-06 11:43:31 · 28968 阅读 · 71 评论 -
Android中ListView下拉刷新的实现
ListView中的下拉刷新是非常常见的,也是经常使用的,看到有很多同学想要,那我就整理一下,供大家参考。那我就不解释,直接上代码了。这里需要自己重写一下ListView,重写代码如下:package net.loonggg.listview;import java.util.Date;import android.content.Context;import android.u原创 2013-07-19 20:55:28 · 110241 阅读 · 43 评论 -
Android学习笔记(一)之仿正点闹钟时间齿轮滑动的效果
看到正点闹钟上的设置时间的滑动效果非常好看,自己就想做一个那样的,在网上就开始搜资料了,看到网上有的齿轮效果的代码非常多,也非常难懂,我就决定自己研究一下,现在我就把我的研究成果分享给大家。我研究的这个效果出来了,而且代码也非常简单,通俗易懂。效果图如下:首先是MainActivity的布局文件,这个布局文件非常简单,就是一个Button:activity_main.xml文件,代码如下:原创 2013-07-28 10:30:41 · 10988 阅读 · 5 评论 -
为什么工具类App,都要做一个社区?
非著名程序员涩郎非著名程序员,字耿左直右,号涩郎,爱搞机,爱编程,是爬行在移动互联网中的一名码匠!个人微信号:loonggg,微博:涩郎,专注于移动互联网的开发和研究,本号致力于分享IT技术和程序猿工作心得体会。欢迎大家关注与转载。为什么工具类App,都要做一个社区?非著名程序员移动原创 2015-06-27 11:17:16 · 4926 阅读 · 0 评论 -
通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout
特别喜欢稀土掘金个人界面的样子,那我们就来看看如何实现这个效果吧,要想实现这个效果,肯定需要的是Material Design风格,那就需要学会使用以下控件:CoordinatorLayout,AppBarLayout,CollapsingToolbarLayout,Toolbar,TabLayout等,如果你做出这个效果来,那这些控件你就基本掌握了。效果对比图介绍之前,我们先来看看效果对比图:稀原创 2016-05-18 10:51:11 · 9271 阅读 · 5 评论 -
Android Material Design系列之FloatingActionButton和Snackbar
今天主讲的Material Design系列的两个控件都不难,所以一起讲了,分别是FloatingActionButton和Snackbar。这个系列都是主讲的Material Design风格的控件,所以都是控件的一些基本使用,也会扩展讲一些与这个控件相关的东西和效果,如果都会了的同学,可以不看这个系列。当然看一下也没啥,再巩固一下知识点也挺好的。FloatingActionButtonFloa原创 2016-06-28 11:11:34 · 1494 阅读 · 0 评论 -
Android Material Design系列之Toolbar
今天我们主要讲Toolbar的使用,我们都知道Toolbar是在Android 5.0以后推出来的,之前都是ActionBar这个控件。我相信虽然谷歌在3.0以后推出了ActionBar,但是用的人肯定很少,因为个人认为它比较恶心。而且Android对ActionBar的界定很模糊,Toolbar和ActionBar在外观上并没有太大的区别,只是说Toolbar更加自由了,而不像ActionBar那原创 2016-06-30 10:53:15 · 1647 阅读 · 0 评论 -
Android Material Design系列之RecyclerView和CardView
去年很早之前,我就讲解过RecyclerView的使用,今天我们就在讲解CardView的时候,顺便再把RecyclerView同时讲解一下。RecyclerView、CardView为用于显示复杂视图的新增Widget。接下来看看如何使用吧。RecyclerViewRecyclerView介绍RecyclerView作为替代ListView使用,它更先进,更灵活,RecyclerView标准化了原创 2016-07-04 11:28:31 · 4061 阅读 · 1 评论 -
Android Material Design系列之Palette
今天我们讲的这个Palette非常好用,也非常好玩。 Palette的作用是从图像中提取突出的颜色,这样我们可以根据提取到的色值把它赋给Toolbar,标题,状态栏等,可以使我们的整个界面色调统一,效果非常好看。Palette介绍Palette顾名思义调色板, Palette的作用是可以从图像中提取图片的颜色。我们可以把提取的颜色融入到App UI中,可以使UI风格更加美观融洽。 Palette原创 2016-07-07 10:46:02 · 1491 阅读 · 0 评论 -
Android Material Design系列之CoordinatorLayout,CollapsingToolbarLayout等
这篇文章其实我一直在想,是写还是不写,因为关于讲 CoordinatorLayout,AppBarLayout,CollapsingToolbarLayout,Toolbar,TabLayout 等这些控件的使用,以前写过一篇,那就是《通过来模仿稀土掘金个人页面的布局来学习使用CoordinatorLayout 》,一直关注和看公众号的关注者应该看到过,上一篇的推送也特别讲了 Coordinator原创 2016-07-08 12:43:32 · 2020 阅读 · 1 评论 -
Android (shape,gradient)使用总结
设置背景色可以通过在res/drawable里定义一个xml,如下:http://schemas.android.com/apk/res/android"> android:startColor="#FF000000"android:centerColor="#FF000000" android:endColor="#FF777777" android:angle原创 2013-07-25 09:24:08 · 31368 阅读 · 0 评论 -
底部菜单栏之Fragment的详细介绍和使用方法
由于TabActivity在Android4.0以后已经被完全弃用,那么我就不再浪费口水继续讲解它了,取而代之的是Fragment。Fragment是Android3.0新增的概念,Fragment翻译成中文是碎片的意思,不过却和Activity十分的相似,这一篇我花大量的篇幅来详细的讲解Fragment的介绍和使用方法。一、Fragment的基础知识介绍1.1概述1.1.转载 2013-07-18 13:48:12 · 18467 阅读 · 2 评论 -
android布局属性大全
RelativeLayout第一类:属性值为true可falseandroid:layout_centerHrizontal 水平居中android:layout_centerVertical 垂直居中android:layout_centerInparent 相对于父元素完全居中android:layout_alignP原创 2012-05-29 06:29:05 · 3502 阅读 · 0 评论 -
Bitmap与Drawable,byte[]之间的转化
android在处理一写图片资源的时候,会进行一些类型的转换,现在有空整理一下,以便于以后随时可用1、drawable---->bitmappublic static Bitmap drawableToBitmap(Drawable drawable) { Bitmap bitmap = Bitmap原创 2012-06-02 22:09:03 · 1367 阅读 · 0 评论 -
Android全屏设置的两种方式
Android 有两种方式可以设置全屏.第一种方式:在protected void onCreate(Bundle savedInstanceState) 里面的this.setContentView() 之前加入以下代码//取消标题this.requestWindowFeature(Window.FEATURE_NO_TITLE);//取消状态栏this.原创 2012-05-24 08:38:09 · 1642 阅读 · 0 评论 -
notifyDataSetInvalidated()和notifyDataSetChanged()有什么区别?
notifyDataSetChanged方法通过一个外部的方法控制如果适配器的内容改变时需要强制调用getView来刷新每个Item的内容。public void notifyDataSetChanged ()该方法内部实现了在每个观察者上面调用onChanged事件。每当发现数据集有改变的情况,或者读取到数据的新状态时,就会调用此方法。public void notify转载 2012-05-25 18:45:51 · 5754 阅读 · 0 评论 -
android计量单位--dip、px、sp之间区别与联系
在页面布局的时候,很多时候需要指定控件宽、高、距离其他控件及边界的距离,字体大小等,都需要计量单位,它们的具体含义以及相互之间如何切换呢?(资源均来自网上整理所得)1. dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA、HVGA和QVGA 推荐使用这dip,不依赖像素。 等同于dp。翻译 2012-05-26 21:52:14 · 1545 阅读 · 0 评论 -
Android之Gallery的两种使用方法
第一种方法:第一步:设计xml布局文件 代码如下:main.xm android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > android:id="@+id/myG原创 2013-01-03 21:07:02 · 24044 阅读 · 0 评论 -
Android手势研究(textview及listview对比验证)
手势即手触摸屏幕做出动作。 View可以通过onTouchEvent收到触摸屏幕事件, 我们可以通过View.setOnTouchListener()设置事件监听器 或者override onTouchEvent()来拦截这些事件, 在拦截函数中判断触摸点的轨迹及运动速度就可以判断出是什么手势。 Android系统提供了GestureDetector来方便手势的判断,即转载 2013-01-05 08:51:24 · 1759 阅读 · 0 评论 -
Android在listview添加checkbox实现
主界面CheckBoxinListViewActivity.java代码如下: public class CheckBoxinListViewActivity extends Activity { /** Called when the activity is first created. */ private MyAdapter adapter;原创 2013-01-06 08:57:46 · 2283 阅读 · 0 评论 -
android:descendantFocusability用法简析
开发中很常见的一个问题,项目中的listview不仅仅是简单的文字,常常需要自己定义listview,自己的Adapter去继承BaseAdapter,在adapter中按照需求进行编写,问题就出现了,可能会发生点击每一个item的时候没有反应,无法获取的焦点。原因多半是由于在你自己定义的Item中存在诸如ImageButton,Button,CheckBox等子控件(也可以说是Button或者C原创 2012-12-21 18:08:36 · 1296 阅读 · 0 评论 -
提升Android应用视觉效果的10个UI技巧
在Android应用开发中,风格和设计或许不是最关键的要素,但它们在决定Android应用成功与否上确实扮演重要的角色。以下是10个Android应用的UI设计技巧,还有个附加技巧,能够提供你的Android应用的视觉吸引力。技巧1:使用大小适当的图像在图像方面,许多Android应用开发者采用的是大小单一的做法。尽管这会使资源管理变得更为简单,但就应用的视觉吸引力而言,这是个错误的做法。原创 2013-01-08 12:16:36 · 2070 阅读 · 0 评论 -
android自定义Spinner下拉菜单和AutoCompleteTextView自动显示的(下拉列表框)样式
在Android中Spinner就是下拉菜单和AutoCompleteTextView自动显示的样式,它相当于HTML中的标签。Android中提供的Spinner Widget下拉菜单和AutoCompleteTextView自动显示已经非常好用了,样式也适用,不过我们还是可以通过定义xml的方式来改变下拉菜单的样式。在layout目录下新建一个xml文件,名字随便(我这里叫acti原创 2013-01-24 17:53:01 · 5723 阅读 · 2 评论 -
关于AutoCompleteTextView 为什么必须输入两个字符才能出现补全提示的问题的解决办法
android提供了自动提示功能的textview,按照自带的文档和api demo可以写几行代码就可以实现此功能。但默认的thresh为2,所以默认情况下你必须输入两个或者两个以上的字符,才会有自动提示功能,否则 AutoCompleteTextView是不会有任何提示的。当然你可以通过setThresh来设置至少输入几个字符后才会有提示,也可以在xml里设置。 AutoCompleteText原创 2013-01-24 18:01:05 · 1868 阅读 · 0 评论 -
Android动画分析之3D翻转效果
Android中的翻转动画效果的实现,首先看一下运行效果如上图所示.Android中并没有提供直接做3D翻转的动画,所以关于3D翻转的动画效果需要我们自己实现,那么我们首先来分析一下Animation 和 Transformation。Animation动画的主要接口,其中主要定义了动画的一些属性比如开始时间,持续时间,是否重复播放等等。而Transformation中则包含一个矩原创 2013-01-20 13:30:18 · 16268 阅读 · 2 评论 -
Android Material Design系列之夜间模式
今天我们讲讲夜间模式的实现,这篇文章的名字应该叫:《Android Material Design系列之夜间模式》。在Android 5.0 之后,实现夜间模式并非很难了,支持的5.0库提供了非常简单的实现方式。不信,你就往下看。首先说,这种方式有它的局限性,只能是两种模式,夜间和白天的黑白两种模式,由于其局限性,所以实现就非常简单。讲之前,咱先看看效果图吧。效果图实现真的是非常简单,就如下几步,原创 2016-07-29 16:20:56 · 2055 阅读 · 2 评论