2013-04-30 109 views
27

三星已經做了一些與懸停的API很好,我有興趣將它包括在我的應用程序。問題是,包含在SPen SDK中的懸停API僅適用於SPen,而不是像三星Galaxy S4上最新的應用程序那樣的手指檢測。三星懸停API與手指

任何人都可以提供一個鏈接到正確的SDK甚至一個示例項目?

編輯:Nifhel評論,休耕此鏈接:Floating Touch on Galaxy S4需要API 12,並創建一個從TextView的繼承,例如一個新的類)

編輯:接受的答案是一個更好的解決方案,工作得很好(需要API 14,但更易於使用)。

+0

您是否設法找到檢測手指的方法? – Nifhel 2013-05-21 09:17:23

+1

不,我仍在尋找或者等待三星就這個API進行溝通。 – 2013-05-21 09:36:51

+2

我在這裏發佈瞭解決方案: http://stackoverflow.com/questions/16666965/floating-touch-on-galaxy-s4 – Nifhel 2013-05-22 14:02:00

回答

20

我試過Nifhel推薦的鏈接描述的方法。 你必須做的唯一的事情是在清單中增加一個新的意圖過濾器爲您的活動,不需要重寫「dispatchGenericMotionEvent」:

<intent-filter> 
    <action android:name="com.sec.android.airview.HOVER" /> 
</intent-filter> 

之後,你必須向你查看添加onHoverListener,它會工作正常。 例如在我的ListAdapter中:

convertView.setOnHoverListener(new OnHoverListener() { 
    @Override 
    public boolean onHover(View v, MotionEvent event) { 
     Log.d("ListAdapter", "Hover: " + item); 
     return false; 
    } 
}); 
+0

嗨。如果您沒有在新流程中啓動活動,此解決方案運行良好。您知道在新流程中開始活動時如何啓用浮動觸摸嗎? – Aram 2013-06-18 14:11:06

-4

在最新版本的sdk android-17(4.2.2) - > Views - > Hover.class中試用ApiDemos。它可以讓你領導懸停事件。

+0

此演示演示如何使用onHover偵聽器,它適用於鼠標或觸摸板。甚至沒有接近我正在尋找的東西。 – 2013-05-03 15:42:59

-1

基於我能做些什麼find,三星尚未發佈支持手指懸停的API(AirView)。