随笔分类 - JavaMe 连载
摘要:【问题描述】JavaMe Graphics类中的drawString不支持文本换行,这样绘制比较长的字符串时,文本被绘制在同一行,超过屏幕部分的字符串被截断了。如何使绘制的文本能自动换行呢?【分析】drawString无法实现自动换行,但可以实现文本绘制的定位。因此可考虑,将文本拆分为多个子串,再对子串进行绘制。拆分的策略如下:1 遇到换行符,进行拆分;2 当字符串长度大于设定的长度(一般为屏幕的宽度),进行拆分。【步骤】1 定义一个String和String []对象;private String info;private String info_wrap[];2 实现字符串自动换行拆分函数
阅读全文
摘要:【更新】本文将适时做出更新,所以现在不是终稿,如有不当之处,敬请指出。【问题描述】介绍设计模式的文章和书很多,但只有使用时,才能理解设计模式的妙处。接上一篇《JavaMe连载(2)-低级界面绘图之菜单》,本文一则对UIController作出解释,一则将自己理解的MVC设计模式,结合实例,与大家交流学习。【理论】什么是MVC?MVC就是模型(model)、视图(view)和控制(control)。什么是模型呢?本例中,模型就是对数据使用时的封装。视图很容易理解,那就是显示内容的具体表示。控制呢?有很多人对视图和控制分不清。在本例中,控制包含视图控制器以及方法的封装。【实例】1 先看工程结构,如
阅读全文
摘要:【问题描述】手机程序中,菜单使用很普遍,JavaMe中,如何绘制菜单呢?下面分享一下实现的菜单功能,实现效果如图1所示:图1 菜单效果图【代码清单】Color.java(借鉴了kf156(亚日),J2ME canvas 多级菜单的实现)package com.token.view.components;/** * 颜色类 * * @author kf156(亚日) * * @Email kf156@QQ.com * * @CopyrightNotice 此代码仅供学习交流,您可以使用并传播本源代码,但请保留作者信息。切勿商用,若有需要,请先于本人联系。 */public class Co...
阅读全文
摘要:【问题描述】JavaMe自带的字体只有三种:Font.SIZE_SMALL、Font.SIZE_MEDIA和Font.SIZE_LARGE,所谓的Font.SIZE_LARGE其实也不是很大。如果要绘制其他字号的字体该怎么办呢?运用低级界面Canvas绘制的点阵字是一个不错的选择。【字模工具】晓奇工作室取模方式:从左到右从上到下,横向8点左高位【分析】所谓“点阵字”就是文字是由点阵构成的。点阵字有两个基本属性,那就是宽(width)和高(height)。先看一个例子:图1 ASCII码取模如图1所示,Asc5x8表示宽度为5,高度为8的点阵字集。一个char型的字符能表示8位。取模工具实际上是
阅读全文
浙公网安备 33010602011771号