MTK:IDLE输入超长号码显示变化

1.MMI_key_input_handler()

2.dialer_inputbox_handle_key_down()

3.dialer_inputbox_direct_input()

3-1.gui_dialer_input_box_insert_character()

(1)       把输入的字符添加进去

(2)       b->validation_callback(b->text, b->current_text_p, (b->text_length >> 1) - 1);

(3)       b->change_callback(); 即:dialer_input_box_change_callback()

(3-1)gui_show_dialer_input_box()

gui_show_dialer_input_box_ext() 第一次SHOW拨号框,只SHOW第一行。在SHOW时首先获取字符高度:character_height = gui_get_character_height();即获取:gpCurrentFont->nHeight。

如果一行显示不下(通过if ((text_x - (character_width + text_gap)) < x1 + 2)来判断),就让MMI_dialer_inputbox->n_lines++,然后直接退出。

(3-2)通过for (i = 0; i < text_length; i++)循环,如果长度超过一行,就重新设置字体MMI_dialer_inputbox.text_font = (&wgui_dialer_box_f2); size:4—>1。

(3-3)dial_text_on_change()(需要搜索下是在哪里设置的此函数)

IdleDialPadInputBoxChange()                                           ChangeLeftSoftkey-change_softkey-set_softkey_labelgui_resize_icontext_button-UI_set_font-SetFont()此函数重新设置了gnCurrentFont!!!

3-2.redraw_dialer_inputbox()

       gui_show_dialer_input_box()使用新设置的字体再次重绘拨号框。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值