chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Jetpack DragAndDrop庫輕松處理拖放數(shù)據(jù)

谷歌開發(fā)者 ? 來源:谷歌開發(fā)者 ? 作者:谷歌開發(fā)者 ? 2022-02-12 09:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

拖放是最基本的手勢(shì)操作,用戶可以點(diǎn)擊并按住圖片、文本或其他數(shù)據(jù)元素,然后將其拖動(dòng)至另一個(gè)應(yīng)用 (或者同一個(gè)應(yīng)用的其他位置) 并松手,即可將數(shù)據(jù)放置到新的位置上。手勢(shì)通常在觸摸屏上表現(xiàn)為長(zhǎng)按,在使用鼠標(biāo)時(shí)則為點(diǎn)擊并拖動(dòng)。

雖然 Android 很早以前便一直支持拖放操作 (DragEvent 在 Android 3.0 即 API 級(jí)別為 11 中引入),但事實(shí)證明實(shí)現(xiàn)對(duì)處理手勢(shì)、事件、權(quán)限和回調(diào)的全面支持并不容易。

我們將為您介紹目前處于 Alpha 階段的 Jetpack DragAndDrop 庫,幫助您更輕松地在應(yīng)用中處理拖放數(shù)據(jù)。

/* Copyright 2021 Google LLC.SPDX-License-Identifier: Apache-2.0 */implementation'androidx.draganddrop1.0.0-alpha02'

拖放操作在大屏幕設(shè)備中變得越來越重要: 平板電腦和筆記本電腦,尤其是可折疊設(shè)備,其分屏模式的拖放操作使用概率是傳統(tǒng)手機(jī)的 7 倍。對(duì)用戶而言,將數(shù)據(jù)從一個(gè)應(yīng)用拖動(dòng)到另一個(gè)應(yīng)用是很自然的體驗(yàn),因此用戶在分屏或窗口模式下使用應(yīng)用可以更有效地進(jìn)行多任務(wù)處理。

分屏或窗口模式

雖然平臺(tái)本身支持從 EditText 中拖動(dòng)文本,但我們強(qiáng)烈建議支持用戶從應(yīng)用的其他組件中拖動(dòng)任何圖片、文件和文本。同樣重要的是,我們也鼓勵(lì)支持用戶將數(shù)據(jù)拖放至您的應(yīng)用。

DropHelper 和 DragStartHelper 結(jié)合使用,可以更輕松地處理手勢(shì)支持、回調(diào)、樣式和像素完美對(duì)齊。

DragStartHelper

DragStartHelper 是 Jetpack 核心庫中的工具類,通常用于檢測(cè)開始拖動(dòng)的手勢(shì),例如長(zhǎng)按或鼠標(biāo)的點(diǎn)擊拖動(dòng)操作。

/* Copyright 2021 Google LLC.SPDX-License-Identifier: Apache-2.0 */
// 將視圖設(shè)置為可拖動(dòng)以共享文件。// DragStartHelper 負(fù)責(zé)攔截拖動(dòng)手勢(shì)并設(shè)置監(jiān)聽器。
DragStartHelper(draggableView) { view, _ ->   // 自動(dòng)設(shè)置合適的 MIME 類型
    val dragClipData = ClipData.newUri(contentResolver, "File", fileUri)
    // 設(shè)置被拖動(dòng)對(duì)象的視覺效果    // 可以擴(kuò)展和自定義,我們這里使用默認(rèn)效果
    val dragShadow = View.DragShadowBuilder(view)
    // 開始拖動(dòng)。注意可以使用全局標(biāo)記實(shí)現(xiàn)跨應(yīng)用拖動(dòng)。
    view.startDragAndDrop(        dragClipData,        dragShadow,        null, // 額外的本地狀態(tài)信息,可選項(xiàng)        // 由于這是一個(gè) "content:" URI 而不僅僅是純文本,我們可以使用        // DRAG_FLAG_GLOBAL_URI_READ 標(biāo)記使得其他應(yīng)用可以從我們的 ContentProvider        // 中讀取信息。如果不使用該標(biāo)記,其他應(yīng)用不會(huì)收到拖動(dòng)事件。
        DRAG_FLAG_GLOBAL or DRAG_FLAG_GLOBAL_URI_READ)    )}.attach()
DropHelper

新的 DropHelper 是一個(gè)負(fù)責(zé)監(jiān)聽器和放置目標(biāo)的工具類。務(wù)必使用 addInnerEditTexts() 構(gòu)建 DropHelper.Options,以此確保您放置目標(biāo)內(nèi)任何嵌套的 EditTexts 都不會(huì)獲得焦點(diǎn)。

/* Copyright 2021 Google LLC.SPDX-License-Identifier: Apache-2.0 */
DropHelper.configureView(    // 處理該放置事件的 Activity
    this,    // 目標(biāo)放置視圖會(huì)被高亮
    outerDropTarget,
    // 支持的 MIME 類型
    arrayOf(MIMETYPE_TEXT_PLAIN, "image/*"),
    // 配置放置目標(biāo)的選項(xiàng)
    DropHelper.Options.Builder()
//要確保正確高亮放置目標(biāo),所有放置目標(biāo)視圖層級(jí)內(nèi)的EditText元素        // 必須通過該方法添加到調(diào)用中。否則目標(biāo)視圖內(nèi)的 EditText 而不是目標(biāo)視圖        // 將在拖放操作中獲得焦點(diǎn)。
        .addInnerEditTexts(innerEditText)        .build()) { _, payload ->
  // 在這里處理數(shù)據(jù),返回需要委托給平臺(tái)的任何內(nèi)容
  ...}

了解更多

更多詳情請(qǐng)參閱給 Android 開發(fā)者的拖放指南,通過大屏幕示例更深入了解 DropHelper 實(shí)踐。歡迎立即嘗試 Alpha 版本并期待您的反饋。

您也可以向我們提交反饋,或分享您喜歡的內(nèi)容、發(fā)現(xiàn)的問題。您的反饋對(duì)我們非常重要,感謝您的支持!

原文標(biāo)題:Jetpack DragAndDrop 庫——拖放操作如此輕松!

文章出處:【微信公眾號(hào):谷歌開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

審核編輯:湯梓紅


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Android
    +關(guān)注

    關(guān)注

    12

    文章

    3973

    瀏覽量

    130282
  • 電腦
    +關(guān)注

    關(guān)注

    16

    文章

    1779

    瀏覽量

    70295
  • 設(shè)備
    +關(guān)注

    關(guān)注

    2

    文章

    4668

    瀏覽量

    71767

原文標(biāo)題:Jetpack DragAndDrop 庫——拖放操作如此輕松!

文章出處:【微信號(hào):Google_Developers,微信公眾號(hào):谷歌開發(fā)者】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    介紹Arduino借助多線程SCoop如何輕松實(shí)現(xiàn)并發(fā)處理任務(wù)

    我們?cè)谟肁rduino開發(fā)復(fù)雜項(xiàng)目時(shí),或多或少會(huì)面臨多任務(wù)同時(shí)處理的工作場(chǎng)景,本篇簡(jiǎn)單介紹Arduino借助多線程SCoop如何輕松實(shí)現(xiàn)并發(fā)處理任務(wù)。
    發(fā)表于 08-24 06:57

    易語言-文件拖放

    易語言是一門以中文作為程序代碼編程語言學(xué)習(xí)例程:易語言-文件拖放
    發(fā)表于 06-06 17:36 ?4次下載

    微軟 Surface Duo 雙屏更新,支持谷歌 Jetpack 窗口管理器

    。 近期,微軟宣布,他們?yōu)槲④?Surface Duo 開發(fā)的雙屏 1.0.0-beta1 版本,集成了谷歌 Jetpack 窗口管理器支持。 IT之家獲悉,為了幫助開發(fā)者,微軟使底層設(shè)備界面可以交換,因此
    的頭像 發(fā)表于 12-14 14:05 ?1830次閱讀

    NVIDIA JetPack SDK AI應(yīng)用程序指南

    NVIDIA JetPack SDKis是構(gòu)建AI應(yīng)用程序的最全面的解決方案。使用JetPackinstaller為您的Jetson開發(fā)人員工具包閃存最新的操作系統(tǒng)映像,為主機(jī)PC和開發(fā)人員工具包安裝開發(fā)人員工具,并安裝啟動(dòng)開發(fā)環(huán)境所需的和api、示例和文檔。
    發(fā)表于 04-06 16:09 ?0次下載
    NVIDIA <b class='flag-5'>JetPack</b> SDK AI應(yīng)用程序指南

    詳解Jetpack Compose 1.1版本的新功能

    我們一如既往地搭建產(chǎn)品路線圖,現(xiàn)在已經(jīng)發(fā)布了 Jetpack Compose 的 1.1 版本,這是 Android 的現(xiàn)代原生界面工具包。此版本新增了一些功能,比如經(jīng)過優(yōu)化的焦點(diǎn)處理、觸摸目標(biāo)值
    的頭像 發(fā)表于 03-11 10:14 ?1672次閱讀

    jetpack FreeBSD應(yīng)用容器

    ./oschina_soft/jetpack.zip
    發(fā)表于 05-11 09:17 ?1次下載
    <b class='flag-5'>jetpack</b> FreeBSD應(yīng)用容器

    JetPack5.0.2 的主要亮點(diǎn)

    JetPack5.0.2 生產(chǎn)版本取代了僅用于開發(fā)用途的 JetPack5.0 / 5.0.1開發(fā)者預(yù)覽版本。
    的頭像 發(fā)表于 08-22 10:43 ?1916次閱讀

    NVIDIA JetPack SDK的主要功能

    NVIDIA JetPack SDK是構(gòu)建 AI 應(yīng)用的全面解決方案,支持所有 Jetson 模塊和開發(fā)者套件。
    的頭像 發(fā)表于 10-17 12:05 ?3420次閱讀

    Jetpack 更新一覽 | 2022 Android 開發(fā)者峰會(huì)

    。Android Jetpack 套件包含超過 100 個(gè)、工具及指南,可幫助開發(fā)者遵循最佳實(shí)踐、減少樣板代碼,并編寫可在各種 Android 版本和設(shè)備中一致運(yùn)行的代碼。您可以借助 Android
    的頭像 發(fā)表于 12-05 17:50 ?1242次閱讀

    如何通過python輕松處理大文件

    眾所周知,python除了以簡(jiǎn)潔著稱,其成熟的第三方功能也是很強(qiáng)大的,今天浩道帶大家看看如何通過python輕松處理大文件,真讓人直呼yyds 。
    的頭像 發(fā)表于 04-27 10:54 ?1110次閱讀

    在 I/O 看未來 | Jetpack 新功能一覽

    組成支柱。Android Jetpack 套件包含超 100 個(gè)、工具及指南,可幫助開發(fā)者遵循最佳實(shí)踐、減少樣板代碼,并編寫可在各種 Android 版本和設(shè)備中一致運(yùn)行的代碼,以便您可以專注于為
    的頭像 發(fā)表于 06-01 01:20 ?606次閱讀
    在 I/O 看未來 | <b class='flag-5'>Jetpack</b> 新功能一覽

    python讀取數(shù)據(jù)庫數(shù)據(jù) python查詢數(shù)據(jù)庫 python數(shù)據(jù)庫連接

    python讀取數(shù)據(jù)庫數(shù)據(jù) python查詢數(shù)據(jù)庫 python數(shù)據(jù)庫連接 Python是一門高級(jí)編程語言,廣泛應(yīng)用于各種領(lǐng)域。其中,Python在
    的頭像 發(fā)表于 08-28 17:09 ?2224次閱讀

    Jetpack WindowManager 1.1 穩(wěn)定版

    變化。許多新款設(shè)備都已進(jìn)入市場(chǎng),大量新用例也已解鎖! Jetpack WindowManager 在幫助您優(yōu)化您的 Android 應(yīng)用上發(fā)揮重要作用,使其能夠適用于不同的設(shè)備類型。并且此版本還包含多項(xiàng)
    的頭像 發(fā)表于 10-18 19:10 ?692次閱讀
    <b class='flag-5'>Jetpack</b> WindowManager 1.1 穩(wěn)定版

    NVIDIA JetPack 6.0版本的關(guān)鍵功能

    NVIDIA JetPack SDK 支持 NVIDIA Jetson 模塊,為構(gòu)建端到端加速 AI 應(yīng)用提供全面的解決方案。JetPack 6 通過微服務(wù)和一系列新功能,擴(kuò)展了 Jetson 平臺(tái)的靈活性和可擴(kuò)展性,是 2024 年截至目前下載量最高的
    的頭像 發(fā)表于 09-09 10:18 ?1094次閱讀
    NVIDIA <b class='flag-5'>JetPack</b> 6.0版本的關(guān)鍵功能

    解析NVIDIA JetPack 6.1的新功能

    NVIDIA JetPack一直在不斷發(fā)展,通過提供量身定制的先進(jìn)軟件滿足邊緣 AI 和機(jī)器人開發(fā)者日益增長(zhǎng)的需求。每次發(fā)布的 JetPack 新版本都會(huì)升級(jí)性能、加入新功能與優(yōu)化現(xiàn)有工具,以便為
    的頭像 發(fā)表于 11-28 10:41 ?1063次閱讀
    解析NVIDIA <b class='flag-5'>JetPack</b> 6.1的新功能