SORU
21 AĞUSTOS 2014, PERŞEMBE


Nasıl Google gibi bir ActionBar kaydırma zaman kaybolur Oyun yapmak için

Nasıl saydam veya yarı saydam yapmak için kaydırma zaman kaybolur ya Oyun Google gibi ActionBar windowActionBarOverlay?

Aşağıdaki ekran görüntüleri kontrol edin

**enter image description here**

CEVAP
21 AĞUSTOS 2014, PERŞEMBE


Aşağıdaki çalışıyorum app kullandım kodu

ScrollView OnScrollChanged Bu fonksiyonu kullanmak zorunda olacak. ActionBar opaklık ayarlamak izin vermez , bu yüzden actionbar bir arka plan drawable ayarlayın ve donukluk değiştirebilirsiniz scrollview içinde kaydırma miktarına göre. Bir iş akışı örneği verdim

İşlev ayarlar pozisyon WRT penceresi dayalı görünüm locationİmage için uygun alfa verir .

this.getScrollY() scrollView kaydırılan nasıl verir

public void OnScrollChanged(int l, int t, int oldl, int oldt) {
    // Code ...
    locationImage.setAlpha(getAlphaForView(locationImageInitialLocation- this.getScrollY()));
}


private float getAlphaForView(int position) {
    int diff = 0;
    float minAlpha = 0.4f, maxAlpha = 1.f;
    float alpha = minAlpha; // min alpha
    if (position > screenHeight)
        alpha = minAlpha;
    else if (position   locationImageHeight < screenHeight)
        alpha = maxAlpha;
    else {
        diff = screenHeight - position;
        alpha  = ((diff * 1f) / locationImageHeight)* (maxAlpha - minAlpha); // 1f and 0.4f are maximum and min
                                            // alpha
        // this will return a number betn 0f and 0.6f
    }
    // System.out.println(alpha " " screenHeight  " " locationImageInitialLocation " " position " " diff);
    return alpha;
}

EDİT: https://github.com/ramanadv/fadingActionBar , şuna bir göz atabilirsiniz. bir örnek çalışma ekledim

enter image description here

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • BradleyWuzHere

    BradleyWuzHe

    25 NİSAN 2011
  • Dylan Brenan

    Dylan Brenan

    22 Aralık 2009
  • Virtual Riot

    Virtual Riot

    19 Mayıs 2011