首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Android : OnPrimaryClipChangedListener()多次调用

Android : OnPrimaryClipChangedListener()多次调用
EN

Stack Overflow用户
提问于 2017-01-09 09:13:00
回答 1查看 456关注 0票数 0

我在服务addPrimaryClipChangedListener()中实现了class.But,当我复制一些文本时,onPrimaryClipChanged()方法会被多次调用。

产出:

RESUT:复制文本RESUT:复制文本

Mycode

代码语言:javascript
运行
复制
public class MyService extends Service {

    private ClipboardManager mCM;

    @Override
    public int onStartCommand(final Intent intent, int flags, int startId) {

        mCM = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);
        // registerPrimaryClipChanged();

        mCM.addPrimaryClipChangedListener(new ClipboardManager.OnPrimaryClipChangedListener() {

            @Override
            public void onPrimaryClipChanged() {

               String copyText = mCM.getText().toString();
               Log.d("RESULT", copyText);           
            }

        });

        return START_STICKY;
    }

    @Override
    public void onDestroy() {
        super.onDestroy();

    }

    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }
}

如何只调用此方法一次?

EN

回答 1

Stack Overflow用户

发布于 2017-08-27 10:01:28

我已经找到了解决这个问题的办法,因为没有具体的解决办法。如果剪贴板中没有数据,那么就可以自动停止覆盖。

if (clipboard.getText().isEmpty()) { selfstop(); //make a call in the overlay service to stop itself }

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41544472

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档