Soru & Cevap

Air view ...

04.03.2015 - 04:29

Arkadaşlar s4 deki air view (örneğin Galeride resmin üzerine parmağımı yaklaştırınca parmağı algılayıp ön izleme penceresi açan) özelliğinde kullanılan sensör kontrol kodu lazım bilen var mı acaba çalışma mantığı nasıldır?

2 Görüntülenme

2 Cevap

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.

picture-44004-1425502034.jpg
sembozdemir
04.03.2015 - 10:27

API Level 14' de eklenen View.OnHoverListener 'la yapabilirsin.

1- İlk olarak test ettiğin telefonun AirView özelliğinin açık olduğuna emin ol.

2- AndroidManifest.xml 'e activity taginin içinde hover özelliğini kullandığını bildir.

[code]

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

[/code]

 

3- Activity'ne  aşağıdaki kodu ekleyerek deneyebilirsin.

[code]
tvHover = (TextView) findViewById(R.id.textViewHover);

tvHover.setOnHoverListener(new View.OnHoverListener() {
    @Override
    public boolean onHover(View v, MotionEvent event) {
        switch (event.getAction()) {
            case MotionEvent.ACTION_HOVER_ENTER: // Enter Hovered
            case MotionEvent.ACTION_HOVER_EXIT:   // Leave Hovered
                v.setBackgroundColor(Color.TRANSPARENT);
                break;
            case MotionEvent.ACTION_HOVER_MOVE:   // On Hover
                v.setBackgroundColor(Color.RED);
                break;
        }

        Log.d(TAG, "Hoverinnnnnnnnnnnnnnnnnnnng............" + event.getAction());

        return false;
    }
});

[/code]

Ayrıca stackoverflow 'da şu linke bakabilirsin.

Ercan
05.03.2015 - 09:33
bi iki yerde kod hatası verdi fix leyip kendi düzeltti ama herhangi bi tepki vermedi telefon air view özelliğide aktif. bu kodu derleyip bi link vermeniz mümkün mü?
sembozdemir
09.03.2015 - 09:25
3. kısımda verdiğim kodu activity'nin onCreate() methodunun içinde yazıyorsun değilmi? bide: kodunu AndroidManifest.xml de hangi activity'de kullanıyorsan o activity'nin içine yerleştireceksin.
picture-7541-1521024507.jpg
burhanaras
04.03.2015 - 04:43

Dostum bunun için proximity sensör kullanman gerekli. Proximiy sensor, cismin ekrana olan mesafesini cm cinsinden ölçerek yaklaşık olarak hesaplayabiliyor.

İşte örnek bir Activity:

http://www.shaikhhamadali.blogspot.com.tr/2013/10/android-sensor-proximity-sensor.html

Ercan
04.03.2015 - 08:51
Cevap icin cok tesekkurler verdiginiz linkde bi uygulama mevcut onu denedim fakat önkamera nin yanindaki sensoru kullaniyor sadece ama ekran algilamiyor. Tam olarak yapmak istedigim ekrana dokunmadan parmagimi algilamasi