res/values/attrs.xml
<declare-styleable name="CellLayout">
<!-- The width of a single cell -->
<attr name="cellWidth" format="dimension" />
<!-- The height of a single cell -->
<attr name="cellHeight" format="dimension" />
.....
</declare-styleable>
res/layout-port/workspace_screen.xml
<com.android.launcher.CellLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:launcher="http://schemas.android.com/apk/res/com.android.launcher"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
launcher:cellWidth="80dip"
launcher:cellHeight="96dip"
....
/>
src/com.android.launcher.CellLayout.java
public CellLayout(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.CellLayout, defStyle, 0);
mCellWidth = a.getDimensionPixelSize(R.styleable.CellLayout_cellWidth, 10);
mCellHeight = a.getDimensionPixelSize(R.styleable.CellLayout_cellHeight, 10);
.....
}
根据颜色看, 应该很清晰:
1. 蓝色部分是自己定义的styleable和attr的名称, 代码和XML里要一致;
2. 绿色部分是自定义的命名空间名称, 也只要上下保持一致即可;
3. 红色部分是View所在的包名, 不允许有误.
参考:http://blog.csdn.net/Android_Tutor/archive/2010/04/21/5508615.aspx
分享到:
相关推荐
Android自定义View——自定义插值器和估值器实现向上抛体运动
仿真书籍翻页效果BookPageView简介:实现了仿真翻页效果,教程完整地描述了翻页原理分析到性能优化的过程教程博客:Android自定义View——从零开始实现书籍翻页效果(一) Android自定义View——从零开始实现书籍...
结合博客文章的描述,我们可以更深入地理解自定义View的原理,并将其应用到自己的项目中。 总的来说,自定义水波纹效果是Android开发中的一个有趣且实用的技术,它展示了Android自定义View的强大功能。通过熟练掌握...
Android自定义View——多边形网格属性图
在自定义View时,我们通常会去重写onDraw()方法来绘制View的显示内容。如果该View还需要使用wrap_content属性,那么还必须重写onMeasure()方法。另外,通过自定义attrs属性,还可以设置新的属性配置值。
在Android平台上,开发一款自定义的日历应用并集成记事本功能是一项常见的需求。这个程序实现了这样的功能,允许用户在自定义的日历视图中查看日期,并与系统备忘录集成,支持设置定时提醒。接下来,我们将深入探讨...
在Android开发中,自定义View是一项重要的技能,它允许开发者根据特定需求创建独特且功能丰富的UI组件。本项目"Android 自定义View实现水平温度计"就是这样一个实例,它通过自定义View来展示一个水平方向的温度计,...
在Android开发中,自定义View是一项重要的技能,它允许开发者根据特定需求创建独特的用户界面元素。本主题将深入探讨如何在Android中实现自定义组合控件,即利用多个基础控件构建一个具有特殊功能或样式的复合视图。...
本文将围绕“android自定义view——波浪线”这一主题,深入探讨如何实现这样的自定义组件。 首先,我们了解自定义View的基本步骤。创建一个自定义View通常需要继承自Android的View或其子类,如ViewGroup。在这个...
本示例"安卓Android源码——自定义控件入门级demo"提供了一个学习和实践的基础平台,旨在帮助开发者掌握自定义控件的基本步骤和技巧。我们将深入探讨这个入门级demo中涉及的关键知识点。 1. **自定义控件基础** ...
最后,作者可能分享了如何在布局文件中添加自定义View,并在运行时根据需要调整参数,如改变扫描速度、范围等。这涉及到XML属性的声明和Java代码中的解析。 总的来说,自定义View—仿雷达扫描效果是一个结合了图形...
通过分析和研究这份源码,开发者不仅可以掌握自定义View的基本技巧,还能了解如何在实际项目中应用这些技巧,提升自己的Android开发能力。对于需要在UI设计上做出独特表现的应用,自定义SeekBar是一个非常实用的实践...
本篇文章将深入探讨如何在Android中创建自定义View,主要分为以下几个关键知识点: 1. **自定义View的基本结构**: 自定义View通常从`View`或`ViewGroup`类派生。首先,我们需要重写`onDraw()`方法,这是自定义...
Android自定义View——贝塞尔曲线实现直播点赞效果 Android自定义View——贝塞尔曲线实现直播点赞效果
在Android开发中,属性动画(Property Animation)是一个强大的工具,它可以改变View对象的视觉状态,创造出丰富的动态效果。本文将深入探讨如何通过自定义Drawable来实现Android属性动画,特别是使用"Robots"这个...
在Android开发中,自定义View是一项常见的需求,它允许开发者根据特定的设计要求创建独一无二的UI元素。本主题将深入探讨如何实现一个自定义View,即仿照新浪微博中的“#话题#”插入EditText的功能。这个功能使得...
这个“安卓Android源码——自定义控件入门级demo.zip”压缩包提供了一些基础的实例,帮助开发者了解和掌握自定义控件的基本步骤。下面将详细介绍相关知识点。 1. **自定义控件的动机**: 自定义控件的主要目的是...
Android自定义View——贝塞尔曲线实现水波纹效果
本资源“Android源码——自定义时钟.zip”显然聚焦于如何在Android平台上构建一个自定义的时钟组件。自定义时钟通常涉及到图形绘制、动画效果以及时间更新机制,下面将详细探讨这些关键知识点。 首先,我们来看...
Android自定义View——折线统计图