trime icon indicating copy to clipboard operation
trime copied to clipboard

关于在候选框中,添加更多按键功能

Open boboIqiqi opened this issue 9 years ago • 11 comments

我今天看一下代码,大致的流程是,Rime.getCandidate()函数,中会判断,当前是否存在编码。如果不存在,就返回switcher。将所有的swither转换成 我想添加一个功能键,就是隐藏键盘。 (现在直接按Android的实体键的返回键,也可以隐藏键盘,不过总感觉不太习惯) 咱们的按键功能里面有定义这个键吗?

另外,现在的问题,在候选项上添加按键,一般是需要图标的,但是现在的candidate类中,只有两个属性:

  /** Rime候選項 */
  public static class RimeCandidate {
    String text;
    String comment;
  };

这显然不能描述图标信息。

要么在其中再加一个字段,用来指示图片的位置。 要么重新定义一个类,以增加更多内容。

第二个问题是, 是否需要将所有的按键及功能,都保存在yaml配置文件中。 我是想,另外定义一个布局的xml,上面放所有的按钮。 这样,编码时,显示候选字View,非编码时,直接换另一个View。该用FrameLayout?

boboIqiqi avatar May 08 '16 03:05 boboIqiqi

贴几张图,大家看哪个顺眼?

触宝

触宝的界面 触宝的操作面板中心

百度

百度的界面 百度操作面板中心

搜狗

搜狗的界面

讯飞

讯飞的界面

我刚修改的

我添加了两个按钮,然后就全毁了

美化前的页面

boboIqiqi avatar May 08 '16 04:05 boboIqiqi

要自定义的话 还是在yaml中比较好。类的话,改也可以,再继承一个也行。按键图标和键盘背景图片的操作我也不熟,所以还没有做。

osfans avatar May 08 '16 07:05 osfans

直接在schema里的switcher中加也行,或者在style中设定status也行。这样比较容易自定义。

osfans avatar May 08 '16 07:05 osfans

@osfans 好的,老大,我先好好看一下吧。主要对小狼毫的定义也不太熟,对其中一些元素的含义还没搞明白。我在看rime和rimelib的wiki教程

boboIqiqi avatar May 08 '16 13:05 boboIqiqi

@xiaoqun2016 那个楼有点歪了,我贴到这里吧。不行再整理哈。

关于图标

style总共五十多个选项,大概有二三十个选项可以做到图形界面里,图标好像很难。 @xiaoqun2016 应该也不用全部都做成图标。像现在别的输入法,只是候选框上可以显示的按钮做成图标。像,编辑,语音,表情面板,其他的都统一放在主设置界面里,只有一个配置项,就像Android的系统设置一样,左边是分类列表,右边是具体的配置。Android自带的android.preference.PreferenceActivity 就是这个风格。  @osfans 老大,是这样的哈。咱们的项目里面有用到这个吗?

关于选择复制

关于选择复制,不必太花精力在这上面,甚至砍掉这个功能也无妨。因为这是安卓系统要做的事情,输入法过度干涉会有「窥探用户隐私」的嫌疑。 ios上的输入法好像都没有这个功能?(是不是苹果为了安全,阻止了输入法滥用这个权限?) 国外的安卓输入法也几乎没有做这个功能。

这个再看吧,我觉得其实还是有用的。比如,你把光标前移一两格,就不需要手动去点位置。另外,有了光标移动,可能就得有选择,复制,粘贴。触宝、百度是专门有一个编辑界面,其他没有注意。 不过也没关系,可以先看看效果,不好删去。实现代价也不大哈。就是定义一个布局,然后切换过就可以是不?移动光标和复制选择,都是librime自带的按键功能吧。

boboIqiqi avatar May 11 '16 00:05 boboIqiqi

吾爱吾师,吾更爱真理。

每次和xiaoqun 同学争辩都让我想起这句话,😁

boboIqiqi avatar May 11 '16 00:05 boboIqiqi

@boboIqiqi 开个玩笑。好像我总是反对你做这个做那个,这正好给了你偷懒和反悔的理由 😄
如果你仍然觉得有需要做,那真的有必要去做了。

xiaoqun2016 avatar May 11 '16 00:05 xiaoqun2016

目前只有全選,沒有移動光標那種選擇。

osfans avatar May 11 '16 01:05 osfans

直接在schema里的switcher中加也行,或者在style中设定status也行。这样比较容易自定义。

要怎么在schema里面定义按键呢,能不能提供一下例子

huangyg11 avatar Apr 14 '17 01:04 huangyg11

目前還沒有完成 @huangyg11

osfans avatar Apr 19 '17 03:04 osfans

Need to rename to "Support mode switcher to use icon"

InfinityLoop1308 avatar Jun 26 '22 01:06 InfinityLoop1308