AMIO编辑器开发(六):使用用适配器模式后,编辑文本区域和行号显示基本完成...

本文介绍了一个名为AIMO的编辑器的基本界面布局和部分功能实现情况,包括行号视图、代码折叠视图及编辑视图等组件,并提到了当前存在的问题如等宽字符显示、滚动条绑定及输入反馈等功能尚未完善。
class Screen{
private :
	LinearLayout screenView;
	// child views
	DebugView debugView;
	LineNumViewAdapter lineNumViewAdapter;// 适配器
	LineNumView lineNumView;
	CodeFoldView codeFoldView;
	EditViewAdapter editViewAdapter;// 适配器
	EditView editView;
	...
}

  其中一个适配器的设置示例:

	// init adapter for line number view
	// window size change will NOT trigger lineCount change, so just init at create window.
	visibleLineCount = lineNumView.getHeight()/lineNumView.getCharHeight() +1;
	lineNumViewAdapter.lineCount = (visibleLineCount < lineCount) ? visibleLineCount : lineCount;
	lineNumView.setAdapter(&lineNumViewAdapter);

  看看目前的显示效果:

解决:

1、行号的显示是(visibleLineCount<fileTotalLineCount):visibleLineCount:fileTotalLineCount,即与文本区域一样,使用短路算法。

2、行号自动计算最大行号宽度,即文件总行数越大,行号区域的宽度也越大。

 

未解决:

1、等宽字符的BUG:为了简便(AIMO编辑器思想不是让程序员多写代码,而是编码自动化+设计自动化,这个等完成到80%才看得出效果),所以首个版本是只支持等宽字符的,现在无论是行号显示还是文本区域,都没有显示等宽字符。

2、界面上的滚动条没有绑定数据。

3、鼠标、键盘等输入,光标的显示还未实现

转载于:https://www.cnblogs.com/aimo/archive/2012/04/30/2476823.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值