最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Android仿英語流利說取詞放大控件的實現(xiàn)方法(附demo源碼下載)

 更新時間:2016年02月15日 11:23:51   作者:bigconvience  
這篇文章主要介紹了Android仿英語流利說取詞放大控件的實現(xiàn)方法,較為詳細的分析了取詞放大控件的實現(xiàn)步驟與相關(guān)技巧,需要的朋友可以參考下

本文實例講述了Android仿英語流利說取詞放大控件的實現(xiàn)方法。分享給大家供大家參考,具體如下:

1 取詞放大控件

英語流利說是一款非常幫的口語學(xué)習(xí)app,在app的修煉頁面長按屏幕,會彈出一個放大鏡,當(dāng)手指移到某個單詞的附近,可以看到該英文單詞會被選中,效果如下圖所示:

2 代碼示例

該控件挺有意思,于是我寫了個簡單的demo,完整實例代碼點擊此處本站下載。,程序運行后的效果如下:

3 實現(xiàn)原理

該控件的實現(xiàn)原理比較簡單,下面介紹幾個比較重要的類

① WordView

在實習(xí)該控件的過程中,我發(fā)現(xiàn)看似普通的TextView,其功能異常的強大,TextView的源碼值得研究。WordView的主要功能是根據(jù)touch的位置,選擇其附近的單詞,然后更改選中單詞的顏色,關(guān)鍵代碼如下:

public void trySelectWord(MotionEvent event) {
  Layout layout = getLayout();
  if (layout == null) {
    return;
  }
  int line = layout.getLineForVertical(getScrollY() + (int) event.getY());
  final int index = layout.getOffsetForHorizontal(line, (int) event.getX());
  Word selectedWord = getWord(index);
  if (selectedWord != null) {
    mSpannableString.setSpan(mForegroundColorSpan,
        selectedWord.getStart(), selectedWord.getEnd(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
    setText(mSpannableString);
    mSelectedWord = getText().subSequence(selectedWord.getStart(), selectedWord.getEnd()).toString();
    mOnWordSelectListener.onWordSelect();
  }
}

② ExercisePanel

該控件主要用來顯示放大鏡,原理比較簡單,就不介紹了。

更多關(guān)于Android相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Android資源操作技巧匯總》《Android開發(fā)入門與進階教程》、《Android控件用法總結(jié)》、《Android短信與電話操作技巧匯總》及《Android多媒體操作技巧匯總(音頻,視頻,錄音等)

希望本文所述對大家Android程序設(shè)計有所幫助。

相關(guān)文章

  • 基于Android SQLite的使用介紹

    基于Android SQLite的使用介紹

    本篇文章小編為大家介紹,基于Android SQLite的使用說明,需要的朋友參考下
    2013-04-04
  • Android新建Activity的方法

    Android新建Activity的方法

    這篇文章主要介紹了Android新建Activity的方法,結(jié)合實例形式分析了Android新建Activity的具體步驟與相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2016-04-04
  • Android 解決ScrollView嵌套CridView顯示問題

    Android 解決ScrollView嵌套CridView顯示問題

    這篇文章主要介紹了Android 解決ScrollView嵌套CridView顯示問題的相關(guān)資料,使用ScrollView嵌套CridView的時候會出現(xiàn)顯示不全的問題,這里提供解決辦法,需要的朋友可以參考下
    2017-08-08
  • 關(guān)于android studio升級4.1 某些插件使用不了的問題(Mac)

    關(guān)于android studio升級4.1 某些插件使用不了的問題(Mac)

    這篇文章主要介紹了關(guān)于android studio升級4.1 某些插件使用不了的問題(Mac),本文給大家分享解決方法供大家參考,感興趣的朋友跟隨小編一起看看吧
    2020-10-10
  • Android顯式啟動與隱式啟動Activity的區(qū)別介紹

    Android顯式啟動與隱式啟動Activity的區(qū)別介紹

    為什么要寫顯式啟動與隱式啟動Activity,Android的Acitivity啟動大致有兩種方式:顯式啟動與隱式啟動,下面分別介紹
    2014-09-09
  • 一文吃透Android如何處理全局異常

    一文吃透Android如何處理全局異常

    這篇文章主要為大家詳細介紹了Android中處理全局異常的相關(guān)方法,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-02-02
  • Flutter適配深色模式的方法(DarkMode)

    Flutter適配深色模式的方法(DarkMode)

    這篇文章主要介紹了Flutter適配深色模式的方法(DarkMode),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-10-10
  • Android基于OpenCV實現(xiàn)圖像脫色

    Android基于OpenCV實現(xiàn)圖像脫色

    脫色是將彩色圖像轉(zhuǎn)換為灰度圖像的過程。同時,它也是數(shù)字打印,風(fēng)格化的黑白照片渲染以及許多單通道圖像處理應(yīng)用程序中的基本工具。本文講述基于OpenCV實現(xiàn)圖像脫色的步驟
    2021-06-06
  • Android編程實現(xiàn)只顯示圖片一部分的方法

    Android編程實現(xiàn)只顯示圖片一部分的方法

    這篇文章主要介紹了Android編程實現(xiàn)只顯示圖片一部分的方法,涉及Android針對圖片的局部顯示操作技巧,需要的朋友可以參考下
    2016-10-10
  • Android仿微信實現(xiàn)下拉列表

    Android仿微信實現(xiàn)下拉列表

    這篇文章主要介紹了Android仿微信實現(xiàn)下拉列表的相關(guān)資料,需要的朋友可以參考下
    2015-12-12

最新評論

繁峙县| 庐江县| 西华县| 大石桥市| 昭通市| 景德镇市| 凤山县| 青龙| 行唐县| 仪陇县| 十堰市| 达拉特旗| 农安县| 古浪县| 隆昌县| 赣榆县| 深水埗区| 大邑县| 广河县| 营口市| 阿勒泰市| 宁远县| 大洼县| 莱阳市| 兰州市| 鸡东县| 抚松县| 化州市| 北流市| 庆阳市| 友谊县| 呼和浩特市| 边坝县| 治多县| 清镇市| 乐至县| 喀什市| 皮山县| 中牟县| 九台市| 盐亭县|