Android View/UI
veryitman
不断的给别人和自己创造心流
展开
-
ListView 编程: Adapter 何方神圣?
本来是想用一篇博客一口气写完:如何优化 ListView ,但是我发现这样做吃力不讨好,一方面,自己太累,另一方面给人的感觉是在记账,根本不是在交流。最后还是觉得分开写会好一点,每一篇突出一个重点比较好。欢迎交流。在这篇博客中,你可以了解到:1)Adapter(适配器)模式简介2)android Adapter 类简介3)android原创 2011-11-11 16:44:26 · 6984 阅读 · 3 评论 -
UI效果(4): Button的那点事_01
再这篇博客中,您可以了解一下内容: 两个Button连在一起效果的实现方法 EditText不可编辑实现,以及注意事项 TextView自动连接web再看代码之前,先看看效果吧!运行之后,见下图:点击save_settings,效果图如下:再点击cancel_settings,效果图如下:项目结构图:效果图点到为止,看源码吧。原创 2011-09-03 13:21:21 · 2174 阅读 · 0 评论 -
UI效果(3): 自定义Dialog
在这篇博客中,你可以了解到下面几项内容: LayoutInflater 的使用 Dialog、AlertDialog与自定义布局 Button 的onClick属性运行,界面就是两个BUtton自定义Dialog自定义AlertDialog完整源码下载地址:http://downlo原创 2011-08-11 19:19:35 · 3587 阅读 · 2 评论 -
UI效果(7): Button的那点事_02
如果你对UI效果(4): Button的那点事_01感兴趣,可以看看。该篇博客,分享Button的绑定事件如OnTouchListener、OnCliskListener、OnLongClickListener以及注意事项。单击事件很简单,这里只说一个问题:isPressed()方法。 /** * 点击事件 * * @author mark *原创 2011-09-08 16:33:10 · 3238 阅读 · 0 评论 -
Spinner(3): OnItemSelectedListener 触发时机
博客Spinner(1): 由SDK引发的问题、Spinner(2): 动态添加资源简单介绍了spinner,但是 Spinner 还有陷阱,所以使用时应该注意。本篇博客继续探讨Spinner及其注意事项,欢迎拍砖。推荐一个网站,关于人工智能教程,教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。为 ...原创 2011-08-08 20:07:06 · 32243 阅读 · 10 评论 -
Spinner(2): 动态添加资源
本篇博客是基于上篇博客http://blog.csdn.net/androidbluetooth/article/details/6605223所写。1. main.xml<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical"原创 2011-07-14 14:29:13 · 3755 阅读 · 0 评论 -
Spinner(1): 由SDK引发的问题
Spinner 类似 widget,sdk_api 文档上面有这样一句话:Spinner is a widget similar to a drop-down list for selecting items.照着官网的例子,先给没用过Spinner的同志扫扫盲,step by step 吧!1. 新建项目 SpinnerUsedResources这个名称主要是想说明该项目,用原创 2011-07-14 13:30:00 · 2527 阅读 · 0 评论 -
ListView 编程: 如何优化自定义 Adapter
使用自定义的 Adapter,需要优化,说到底是优化我们自定义的适配器类!再说到底就是优化回调方法 getView 方法。 ListView 编程: Adapter 何方神圣? 博客中,只是简单的介绍了如何去自定义一个适配器以及注意事项。但是.......如果像 ListView 编程: Adapter 何方神圣? 中的示例代码那样去写程序的话,那么估计要被老大BS原创 2011-11-11 21:40:54 · 3739 阅读 · 6 评论 -
UI效果(9): 屏幕相关操作
android中有很多未知的“路”,只有走好每一步,才有可能找到捷径!!!1. 获取 android 设备屏幕大小在说具体的操作方法之前,我们先了解一下几个知识点,下面都是都是自己的语言描述,与专业术语有差异。a. 像素与分辨率像素,指的是一定区域类(矩形区域)横向、纵向上点的乘积的结果,单位是 pixel.分辨率,指的是一定区域类(矩形原创 2011-05-23 19:46:00 · 2950 阅读 · 2 评论 -
View编程(9): TypeArray、attrs.xml
博客 http://blog.csdn.net/androidbluetooth/article/details/6725005 简单介绍了一下如何自定义 view 以及如何为自定义的 view 定义属性。这篇博客接着聊聊关于自定义属性。我们可以在 res/values/attrs.xml 里面自定义属性,那麽可以定义哪些属性,究竟又该如何定义?在 google原创 2012-03-29 23:06:12 · 3948 阅读 · 0 评论 -
UI 效果(9):merge 的点点滴滴
android 布局中经常会用到 标签,来优化 ui 布局。具体如何优化,可以借助 android sdk 提供的 tools/hierarchyviewer 工具。这个工具,并不是万能的,你需要自己去根据实际情况分析和优化自己的布局。该工具的使用可以查阅资料,这里不赘述。关于 使用,推荐一篇文章,简单明了http://www.bangchui.org/s原创 2012-11-20 10:40:35 · 2858 阅读 · 0 评论 -
UI 设计:pixel dip dpi sp density
-----------整理自网络-----------1. px (pixels)像素 – 是像素,就是屏幕上实际的像素点单位。dip或dp (device independent pixels)设备独立像素,与设备屏幕有关。sp (scaled pixels — best for text size):类似dp,主要处理字体的大小。dpi(dot per inch原创 2012-12-18 12:49:10 · 2503 阅读 · 0 评论 -
UI效果(5): 实现Activity刷新
目前刷新Acitivity,只想到几种方法。仅供参考,如果您有更好的方法,请赐教。程序界面:点击refresh view可以刷新界面,点击write content可以在EditText中自动写入文字。1. intentpackage mark.zhang;import android.app.Activity;import android.content.Inten原创 2011-09-03 15:58:06 · 29649 阅读 · 15 评论 -
UI效果(2): shape
android中的控件不是很多,布局也很少。但是这些东西很灵活,所以想设计好的界面还是需要一定的功底的。本篇博客,您可以了解到: 自定义 Toast Button特殊效果在sdk的api中,相信你可以找到名为Shape Drawable的这样一篇文章,位置:如果,你想更加理解掌握这篇博客,建议好好地、仔细地看看这篇Shape Drawable文章。秀一下效果图,呵呵原创 2011-07-26 11:44:41 · 1568 阅读 · 2 评论 -
View编程(8): 自定义 View 如何注册广播
想象这样一种情景:自定义 View 需要在外界条件改变的时候,改变自己的状态,并且这个条件改变的同时会发送一条广播,那麽如何做呢?在 android opensource: Settings 研究_android 组件如何响应语言变化 博客中,说过我会跟大家交流一下如何在自己定义的 View 中注册以及接收广播。在贴代码之前,先看看 View 的两个回调方法 onAt原创 2012-01-12 22:05:15 · 4212 阅读 · 2 评论 -
View编程(7): 自定义View_03
根据android的api demo中提供的例子,自己尝试写一个自定义View,算是做个复习。这篇博客是建立在View编程(5): 自定义View_01_ApiDemo源码研究、View编程(6): 自定义View_02_ApiDemo源码研究基础之上。以上两篇博客是对某些知识点的原理性分析,该篇也算是一个小结,没有什么原理可说。好嘞,废话到此为止。1. 自定义ViewMyView原创 2011-08-27 17:31:07 · 3695 阅读 · 2 评论 -
View编程(6): 自定义View_02_ApiDemo源码研究
阅读这篇博客之前,假设你已经研究了 View编程(5): 自定义View_01_ApiDemo源码研究 提供的实例。当时,很奇怪为什么会出现这样的log:(在手机上测试结果,不是在模拟器上。)D/mark ( 2924): onMeasure() is invoked!D/mark ( 2924): onMeasure() is invoked!D/mark (原创 2011-08-20 15:48:14 · 2858 阅读 · 0 评论 -
View编程(5): 自定义View_01_ApiDemo源码研究
android提供的APIDemo中,在/res/values下面有个attrs.xml文件。其内容如下:<!-- Copyright (C) 2007 The Android Open Source Project Licensed under the Apache License, Version 2.0 (the "License"); you m原创 2011-08-18 22:00:09 · 3518 阅读 · 2 评论 -
View编程(4): Template method
说重点之前,给大家推荐一篇文章,算是对View绘图的一个小例子。public class AndroidTest extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);原创 2011-08-17 22:06:29 · 2014 阅读 · 0 评论 -
View编程(3): invalidate()源码分析
View编程(2): invalidate()再探博客中,说了加载View的onDraw()方法的时机以及invalidate()方法的作用。事实上,远远没有您想象的那么简单。为了写好这篇博客,还是拿例子说事吧。package mark.zhang;import android.app.Activity;import android.content.Context;import原创 2011-08-17 20:57:03 · 10734 阅读 · 17 评论 -
View 编程(0): 认识 LayoutInflater
LayoutInflater 在 android 开发中使用频率较高,需要留意!该类是一个抽象类,在文档中如下声明:public abstract class LayoutInflater extends Object1. 获得 LayoutInflater 实例三种方法可以获得该实例对象,方法如下:a. LayoutInflater原创 2011-07-12 19:17:27 · 4563 阅读 · 3 评论 -
View编程(1): Window、View与setContentView()
只要你使用过Activity,那么你一定使用过setContentView这个方法。一般都是这样调用该方法:setContentView(R.layout.main);然后,在手机或者模拟器上就可以看见自己的布局。如果,你留意的话,setContentView还有很多过载方法: public void setContentView(int layoutResID) {原创 2011-08-16 21:08:15 · 9869 阅读 · 11 评论 -
View编程(2): invalidate()再探
博客 Android(四) :更新UI的方法 中提到invalidate()方法,但是由于自己的阅历不足,没有过多的说明,只是泛泛而谈!本篇继续探究这个诡异的方法。在阅读本篇博客之前,建议您先看看 View编程(1): Window、View与setContentView()基于 Android(四) :更新UI的方法 中的例子,稍作修改:package mark.原创 2011-08-16 22:23:17 · 9559 阅读 · 7 评论 -
UI效果(8): 为你的 App 设置图标
做 android 开发这么久,还是不能很熟练的处理各种图标。在一个好的 App 中,界面的好坏直接影响用户体验。而图标则是界面的一部分资源,所以很值得重视。不管是menu,还是启动图标,或者是状态栏的图标,我们需要很好的做出选择,那麽怎么样去做到适应各种像素呢?看下面这张图:来源:Android 图标ICO设计标准与原则这是一篇好文章。原创 2011-09-20 14:02:02 · 1414 阅读 · 0 评论 -
UI效果(6): EditText与软键盘
EditText需要注意的地方很多,所以做个小结。该篇博客会持续更新。下面的内容来自:http://www.learningandroid.net/blog/,自己稍加修改。下面的LAYOUT定义文件举了一些例子说明inputType和imeOptions的使用。<EditText android:id="@+id/textNormal" android:layo原创 2011-09-07 11:08:46 · 3180 阅读 · 0 评论 -
UI效果(1):实现Activity全屏
在开发的过程中,为了增加更好的视图效果,需要将当前Activity设置为全屏模式。几经波折,顺利搞定。在这里分享给大家!先看这段代码:@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main原创 2011-05-19 15:49:00 · 11142 阅读 · 8 评论