久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

<small id='h04gM'></small><noframes id='h04gM'>

  1. <i id='h04gM'><tr id='h04gM'><dt id='h04gM'><q id='h04gM'><span id='h04gM'><b id='h04gM'><form id='h04gM'><ins id='h04gM'></ins><ul id='h04gM'></ul><sub id='h04gM'></sub></form><legend id='h04gM'></legend><bdo id='h04gM'><pre id='h04gM'><center id='h04gM'></center></pre></bdo></b><th id='h04gM'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='h04gM'><tfoot id='h04gM'></tfoot><dl id='h04gM'><fieldset id='h04gM'></fieldset></dl></div>
    <legend id='h04gM'><style id='h04gM'><dir id='h04gM'><q id='h04gM'></q></dir></style></legend>

    1. <tfoot id='h04gM'></tfoot>
      • <bdo id='h04gM'></bdo><ul id='h04gM'></ul>

      onTouchEvent()中如何區(qū)分移動(dòng)和點(diǎn)擊?

      How to distinguish between move and click in onTouchEvent()?(onTouchEvent()中如何區(qū)分移動(dòng)和點(diǎn)擊?)

      <small id='bLITL'></small><noframes id='bLITL'>

        1. <i id='bLITL'><tr id='bLITL'><dt id='bLITL'><q id='bLITL'><span id='bLITL'><b id='bLITL'><form id='bLITL'><ins id='bLITL'></ins><ul id='bLITL'></ul><sub id='bLITL'></sub></form><legend id='bLITL'></legend><bdo id='bLITL'><pre id='bLITL'><center id='bLITL'></center></pre></bdo></b><th id='bLITL'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='bLITL'><tfoot id='bLITL'></tfoot><dl id='bLITL'><fieldset id='bLITL'></fieldset></dl></div>
            <tbody id='bLITL'></tbody>
            <legend id='bLITL'><style id='bLITL'><dir id='bLITL'><q id='bLITL'></q></dir></style></legend>

              • <bdo id='bLITL'></bdo><ul id='bLITL'></ul>
              • <tfoot id='bLITL'></tfoot>
              • 本文介紹了onTouchEvent()中如何區(qū)分移動(dòng)和點(diǎn)擊?的處理方法,對(duì)大家解決問(wèn)題具有一定的參考價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧!

                問(wèn)題描述

                在我的應(yīng)用程序中,我需要同時(shí)處理移動(dòng)和點(diǎn)擊事件.

                In my application, I need to handle both move and click events.

                點(diǎn)擊是一個(gè) ACTION_DOWN 動(dòng)作、幾個(gè) ACTION_MOVE 動(dòng)作和一個(gè) ACTION_UP 動(dòng)作的序列.理論上,如果您收到一個(gè) ACTION_DOWN 事件,然后是一個(gè) ACTION_UP 事件 - 這意味著用戶剛剛單擊了您的視圖.

                A click is a sequence of one ACTION_DOWN action, several ACTION_MOVE actions and one ACTION_UP action. In theory, if you get an ACTION_DOWN event and then an ACTION_UP event - it means that the user has just clicked your View.

                但實(shí)際上,此序列不適用于某些設(shè)備.在我的三星 Galaxy Gio 上,只需單擊我的視圖就會(huì)得到這樣的序列:ACTION_DOWN,幾次 ACTION_MOVE,然后是 ACTION_UP.IE.我收到一些帶有 ACTION_MOVE 操作代碼的意外 OnTouchEvent 觸發(fā).我從來(lái)沒(méi)有(或幾乎從來(lái)沒(méi)有)得到序列 ACTION_DOWN -> ACTION_UP.

                But in practice, this sequence doesn't work on some devices. On my Samsung Galaxy Gio I get such sequences when just clicking my View: ACTION_DOWN, several times ACTION_MOVE, then ACTION_UP. I.e. I get some unexpectable OnTouchEvent firings with ACTION_MOVE action code. I never (or almost never) get sequence ACTION_DOWN -> ACTION_UP.

                我也不能使用 OnClickListener,因?yàn)樗鼪](méi)有給出點(diǎn)擊的位置.那么如何檢測(cè)點(diǎn)擊事件并將其與移動(dòng)區(qū)別開(kāi)來(lái)呢?

                I also cannot use OnClickListener because it does not gives the position of the click. So how can I detect click event and differ it from move?

                推薦答案

                這是另一個(gè)非常簡(jiǎn)單的解決方案,不需要您擔(dān)心手指被移動(dòng).如果您將點(diǎn)擊作為簡(jiǎn)單移動(dòng)距離的基礎(chǔ),那么您如何區(qū)分點(diǎn)擊和長(zhǎng)點(diǎn)擊.

                Here's another solution that is very simple and doesn't require you to worry about the finger being moved. If you are basing a click as simply the distance moved then how can you differentiate a click and a long click.

                您可以在其中添加更多智能并包括移動(dòng)的距離,但我還沒(méi)有遇到一個(gè)實(shí)例,即用戶可以在 200 毫秒內(nèi)移動(dòng)的距離應(yīng)該構(gòu)成移動(dòng)而不是點(diǎn)擊.

                You could put more smarts into this and include the distance moved, but i'm yet to come across an instance when the distance a user can move in 200 milliseconds should constitute a move as opposed to a click.

                setOnTouchListener(new OnTouchListener() {
                    private static final int MAX_CLICK_DURATION = 200;
                    private long startClickTime;
                
                    @Override
                    public boolean onTouch(View v, MotionEvent event) {
                        switch (event.getAction()) {
                            case MotionEvent.ACTION_DOWN: {
                                startClickTime = Calendar.getInstance().getTimeInMillis();
                                break;
                            }
                            case MotionEvent.ACTION_UP: {
                                long clickDuration = Calendar.getInstance().getTimeInMillis() - startClickTime;
                                if(clickDuration < MAX_CLICK_DURATION) {
                                    //click event has occurred
                                }
                            }
                        }
                        return true;
                    }
                });
                

                這篇關(guān)于onTouchEvent()中如何區(qū)分移動(dòng)和點(diǎn)擊?的文章就介紹到這了,希望我們推薦的答案對(duì)大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                【網(wǎng)站聲明】本站部分內(nèi)容來(lái)源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問(wèn)題,如果有圖片或者內(nèi)容侵犯了您的權(quán)益,請(qǐng)聯(lián)系我們刪除處理,感謝您的支持!

                相關(guān)文檔推薦

                Get user#39;s current location using GPS(使用 GPS 獲取用戶的當(dāng)前位置)
                IllegalArgumentException thrown by requestLocationUpdate()(requestLocationUpdate() 拋出的 IllegalArgumentException)
                How reliable is LocationManager#39;s getLastKnownLocation and how often is it updated?(LocationManager 的 getLastKnownLocation 有多可靠,多久更新一次?)
                How to detect Location Provider ? GPS or Network Provider(如何檢測(cè)位置提供者?GPS 或網(wǎng)絡(luò)提供商)
                Get current location during app launch(在應(yīng)用啟動(dòng)期間獲取當(dāng)前位置)
                locationManager.getLastKnownLocation() return null(locationManager.getLastKnownLocation() 返回 null)
                  <tbody id='sDqPc'></tbody>
                  <i id='sDqPc'><tr id='sDqPc'><dt id='sDqPc'><q id='sDqPc'><span id='sDqPc'><b id='sDqPc'><form id='sDqPc'><ins id='sDqPc'></ins><ul id='sDqPc'></ul><sub id='sDqPc'></sub></form><legend id='sDqPc'></legend><bdo id='sDqPc'><pre id='sDqPc'><center id='sDqPc'></center></pre></bdo></b><th id='sDqPc'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='sDqPc'><tfoot id='sDqPc'></tfoot><dl id='sDqPc'><fieldset id='sDqPc'></fieldset></dl></div>
                1. <small id='sDqPc'></small><noframes id='sDqPc'>

                  • <tfoot id='sDqPc'></tfoot>
                      <bdo id='sDqPc'></bdo><ul id='sDqPc'></ul>

                          <legend id='sDqPc'><style id='sDqPc'><dir id='sDqPc'><q id='sDqPc'></q></dir></style></legend>
                        • 主站蜘蛛池模板: 九九九色 | 久久av网| 视频一区二区三区在线观看 | 国产在线麻豆精品入口 | 俺去俺来也www色官网cms | 天天草夜夜骑 | 伊人看片| 黄色一级大片在线免费看产 | 欧美一级一| 日本不卡在线视频 | 精品久久久久一区二区国产 | 国产激情亚洲 | 色婷婷婷婷色 | 国产一区二区三区久久久久久久久 | 黄网免费 | 国产成人精品免费 | 日本不卡一二三 | 国产精品国产成人国产三级 | 婷婷综合色| 小川阿佐美pgd-606在线 | 在线日韩欧美 | 久久午夜国产精品www忘忧草 | 国产在线一区二区 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 午夜精品福利视频 | 欧洲在线视频 | 黄网在线观看 | 成人av一区二区三区 | 羞羞视频网站免费观看 | 韩日一区二区 | 日日操视频 | 国产欧美一区二区精品忘忧草 | 日韩成人在线视频 | 免费看片在线播放 | 国产精品久久久久久久久久久久久 | 欧美 日韩 亚洲91麻豆精品 | 久草免费福利 | 国产精品亚洲片在线播放 | 欧美日韩在线高清 | 国产99久久久国产精品下药 | 在线国产一区 |