res/values/attrs.xml
<declare-styleable name="CellLayout"><!-- The width of a single cell --><attr name="cellWidth" format="dimension"></attr><!-- The height of a single cell --><attr name="cellHeight" format="dimension"></attr>
.....
</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" ....></com.android.launcher.celllayout>
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
http://hi.baidu.com/lck0502/blog/item/8d4e453f80cf43cf7c1e714b.html
分享到:
相关推荐
"安卓Android源码——Android Launcher 源码修改可编译.zip" 这个标题表明我们关注的是Android操作系统的源代码,特别是与启动器(Launcher)相关的部分。Launcher是用户与Android系统交互的主要界面,它管理应用...
《深入解析Android Launcher源码:实现可编译的高级应用》 在移动操作系统的世界中,Android以其开源性和灵活性深受开发者喜爱。本资料包提供的是一个经过修改,可编译的Android Launcher源码,旨在帮助开发者深入...
这里我们主要探讨的是Android 2.2(Froyo)版本的Launcher源码。 1. **Launcher结构分析** Launcher由多个关键组件构成,包括Activity、Service、BroadcastReceiver以及ContentProvider。其中,主Activity是整个...
以下是对Android Launcher源码的一些关键知识点的详细解释: 1. **ActivityLauncher**: 这是Launcher的主要类,它继承自`AppCompatActivity`,负责处理用户的点击事件,启动或恢复应用。源码中可以看到如何解析布局...
9. **自定义行为**:原生Launcher源码中还可能包含对特定设备或定制系统的特有功能,比如手势识别、快速设置面板等。 通过分析这个源码,开发者不仅可以了解到Android Launcher的基本工作流程,还能学习到如何根据...
在这个"安卓Android源码——Launcher源码修改可编译.zip"文件中,你将有机会接触到Android系统的核心部分,并学习如何对源码进行编译和调试。 首先,Android源码分为几个主要部分,包括系统库、框架层、运行时环境...
Android TV Launcher源码分析 Android TV Launcher是Android操作系统在电视设备上显示的主屏幕界面,它负责展示和管理用户的应用、频道和其他内容。对于初学者来说,深入理解Android TV Launcher的源码是学习...
【Launcher源码(Android 6.0系统原生)】是一个深入理解Android系统启动器工作原理的宝贵资源,尤其对于想要定制或优化Android界面的开发者来说。这个源码是基于Android 6.0 Marshmallow的官方Launcher应用,已经...
本文将重点解析Android桌面应用Launcher2的源代码,旨在为开发者提供一个深入学习和理解其内部工作原理的窗口。 Launcher2是Android早期版本中的默认桌面应用,它负责展示应用图标、小部件以及处理用户的触摸事件。...
在Launcher源码中,这个适配器可能被定制为`LauncherModel`,它负责加载和缓存应用快捷方式和小部件的信息。 3. **Gesture Detection**:为了实现滑动手势,Android使用了GestureDetector和Scroller类。...
《深入解析Android Launcher3源码修改与应用》 在Android操作系统中,Launcher3是一个至关重要的组件,它是我们日常接触最多的部分——手机桌面。这个组件负责显示应用图标、小部件、快捷方式,以及处理主屏幕的...
【Android 8.0 Launcher3源码解析】 Android 8.0(代号Oreo)是Google推出的Android操作系统的一个重大版本,它引入了许多改进和新特性。其中,Launcher3是Android系统的核心组件之一,它是用户与设备交互的主要...
总的来说,Android 5.0 Launcher3源码对于Android开发者,特别是对系统级应用和自定义启动器感兴趣的开发者来说,是一份宝贵的教育资源。通过深入研究这份源码,可以提高对Android系统底层机制的理解,从而提升开发...
在Android 8.0(API级别26)中,`Launcher2`虽然不是最新的启动器版本(已经被`Launcher3`取代),但其源码仍然是学习Android UI框架和系统级应用开发的重要资源。下面将深入探讨`Launcher2`源码中的关键知识点。 #...
总之,Android桌面Launcher源码提供了一个深入理解Android系统工作原理的平台,特别是对那些希望进行系统级定制或优化的开发者来说,这是一份极具价值的学习资源。通过分析`Launcher3`,我们可以学习到如何构建高效...
深入学习和分析Launcher3的源码,不仅有助于理解Android系统的工作原理,还可以帮助开发者优化启动器性能,创建更符合用户需求的定制化体验。在实际项目中,开发者可以通过学习如何处理触摸事件、动画效果、数据持久...
Android Launcher源码的修改与编译是一个深入理解Android系统运行机制的重要途径,对于开发者来说,这能帮助他们定制自己的桌面应用或者优化系统性能。 1. **Launcher结构分析** Android Launcher由多个组件构成,...
Android Launcher源码解析 Android Launcher是手机主屏幕的程序,它是用户与系统交互的主要入口,负责展示所有可启动的应用程序,以及提供快捷操作。在这个项目中,我们关注的是如何实现展示应用图标、点击打开应用...