Android画图板 - 开发要点

本文介绍了一款绘图应用的设计思路,包括图形抽象、图形创建、单例画笔的应用,以及如何设置偏好、实现菜单功能、保存图像等。同时讨论了在特定条件下监听广播的需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 抽象图形

直线、矩形、随笔线的绘制是有共同点的:

(1) 这些图形都需要知道坐标信息,以确定绘制到屏幕的那个位置。

(2) 因为各自的形状不同,它们都要提供draw方法,绘制自身。

所以,我们将这些图形抽象出来,创建一个Drawing类。

2. 创建图形

每次用户选择绘制图形后,我们都需要创建一个图形实例,也就需要“new”。可是,这款软件要增量开发,以后可能还需要不断的扩充功能,丰富可绘制图形的种类。所以,我们在这里应用“简单工厂”方法来创建图形,把所有的有关图形的“new“都封装到工厂类里。

3. 单例画笔

(1)在我们的应用中,无论绘制什么图形,我们只用到一个画笔。(如果我们将画笔的颜色设置为蓝色,我们画出的矩形、椭圆都将是蓝色的。)

(2)我们需要对画笔进行设置,然后所绘制的图形随之改变,而我们又不想在图形类的draw方法中“new”。

所以,我们需要应用单例模式,保证在我们的应用中只存在一个唯一的画笔实例。

4. 设置偏好

为了能够更好的同Android系统核心应用的UI一致,我们让该应用中负责设置的Acitvity继承PreferenceActivity,然后用在xml文件中定义的view填充这个Acitivty。

5. 菜单功能

我们将菜单定义在一个xml文件中,当用户点击了menu键,我们就用这个xml文件中的view填充menu。我们将提供“保存”、“设置”、“清屏”、“图形”、“关于”和“退出”选项。

6. 保存图像

(1)为了能适应多种屏幕尺寸的手机,我们在创建图像的时候就要根据用户手机屏幕的宽高像素来创建。

(2)该软件将把图形保存到sdcard中,在保存之前,需要检测sdcard是否存在,是否可写入。如通过以上检查,就保存图像。

7. 监听广播

以下两种情况同事发生时,我们就需要监听短信广播,在我们的Activity中提示用户:

(1)用户手机设置为无声

(2)用户将我们的软件全屏运行









评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值