6

有没有办法在基于 Android / HTC Sense 的手机中访问复制/粘贴 api/UI?

我真的很喜欢在使用 Sense 时长按在大画布上的工作方式。有没有办法以编程方式检测代码在基于 Sense 的手机上运行并调用这些 API?

4

3 回答 3

2

不,非常肯定不是。Android 中只有一个复制/粘贴 API,尽管皮肤之间的实现细节可能有所不同,如果您可以将其称为 API,即使您选择了正确的 UI 元素,它也是免费的。

我也不知道您所说的“在使用 Sense 时长按在大画布上的工作方式”是什么意思。当我比较复制文本和选择现有 Android 和 HTC Sense 中的文本时,它大部分是相同的(除了颜色等)。你能把你的问题说得更具体一点吗?

编辑:也许你的意思是:将我的应用程序添加到 HTC 剪切和粘贴发送到菜单

于 2010-09-26T17:30:45.247 回答
1

好吧,老实说,我还没有玩过android,尽管我打算很快这样做。但是我一直在使用 Microsoft Surface 表。

如果标准 android 库没有实现检测某种触摸和按住事件的功能,我建议如下:

我认为您可以自己轻松实现这样的助手。您可能想要做的是为该画布的触摸事件添加一个侦听器。在手指接触画布的那一刻,您开始运行计时器。当计时器结束时,您将触发所需的事件。但是,这还需要您实施其他一些事情。当手指移动到某个阈值之外,或者手指再次抬起时,需要停止并清理计时器,使其不再触发。

在这个场景中,您已经为自己创建了触摸并按住场景。您需要注意的是,在添加触摸操作时将其断开。

(我真的认为标准触摸库必须包含与此功能类似的东西!)


通过几次搜索我能找到的是:

@Override
public void onLongPress(MotionEvent e)
{
    //Call your own custom copy paste dialog here.
}

(否则您可能会在 GestureDetector 中找到您喜欢的东西?)

复制粘贴功能使用 ClipboardManager。您只需要创建一个弹出菜单,其中包含复制和粘贴图像以及相关文本以及该 ClipboardManager 的挂钩。

于 2010-09-16T13:15:08.657 回答
0

我也是 Android 开发的新手,但我认为您正在寻找的是 R.id 类。这是 API 文档链接:

http://developer.android.com/reference/android/R.id.html

这看起来像它的使用方式:

menu.add(0, android.R.id.copy, menuInde​​x++, android.R.string.copy);

menu.add(0, android.R.id.paste, menuInde​​x++, android.R.string.paste);

祝你的应用好运!

山姆

于 2010-09-23T13:53:54.130 回答