2010-07-10 19 views
8

Üç tane çok benzer etkinliğe sahip bir Android uygulaması geliştiriyorum. Kullanıcının ekranda sola ve sağa kaydırarak aralarında geçiş yapabilmesini isterim.Android: Ev uygulamasında masaüstünü değiştirmek gibi Etkinlikler arasında nasıl geçiş yapılır?

Bu post

Sonra bu şekilde yöntem onSwipe() değiştirilmiştir izledi: Bu benim şimdiye kadar olduğu yönetilen nasıl

@Override 
public void onSwipe(int direction) { 
    Intent intent = new Intent(); 

    switch (direction) { 

    case SimpleGestureFilter.SWIPE_RIGHT: 
    intent.setClass(this, TodoTodaySheet.class); 
    break; 
    case SimpleGestureFilter.SWIPE_LEFT: 
    intent.setClass(this, TrashSheet.class); 
    break; 

    } 
    startActivity(intent); 
} 

O inşaat ama tamamen değilim bundan memnun. Dahası, bunun doğru bir yaklaşım olup olmadığını bilmiyorum.

Masaüstü değiştirirken Home uygulamalarındaki gibi bir davranışa sahip olmak isterim. Bu nedenle, daha düzgün bir animasyon ve denilen hareketin doğru yönden görünmesini istiyorum. sağa kaydırırken ekranın sol tarafından.

Herhangi bir ipucu? Çok teşekkür ederim.

+0

Bu ipucu Etkinlikler (etkinlikler arasında geçiş yapmak için değil, bunu yapmak için henüz bir yol bulamadım), ancak Görünümler arasında geçiş yapmak şu şekilde yapılır: ViewFlow https://github.com/ pakerfeldt/android-viewflow – Ted

+0

@dgraziotin, farklı etkinliklere kaymak için en son kullandığınız yaklaşıma mı? – juned

cevap

4

ev ekranı its' source code de görebileceğiniz gibi faaliyetleri farklı görünümler arasında sadece kaydırır arasında kaydırma değil (hat 298 ekranlar nerede olduğunu: Burada

bu konuda biraz daha fazla bilgi içeren bir bağlantı var değişti).

Etkinlikler arasında geçiş yapıyorsanız, kullanıcı yapılandırmasının merhametinde, geçiş sırasında ekrana ne olacağı ile ilgili aygıt yetenekleri &, yani yapabileceğiniz çok şey yoktur.

+0

Bu yüzden bunu başarmanın tek yolu Faysal'ın önerdiği gibi bir ViewFlipper kullanmaktır. News uygulamasının yaptığı gibi, bir TabView ve bazı aktiviteler arasında geçiş yapmak için harekete geçmek. – dgraziotin

+0

Bir ViewFlipper kullanmak, işletim sisteminizin işletim sisteminizi nasıl yönettiğine ilişkin sonuçları olan tek bir Etkinliği kullanmanızı engeller (ör. OS, kaynakları temizlediğinde tamamen veya hiç bir seçeneği yokken bırakılır). –

1

Muhtemelen üç ayrı Etkinlik olarak sahip olmak en iyisi olsa da, kullanıcıların tek bir Etkinlikte benzer bir etki elde etmek için bir ViewFlipper kullandıklarını gördüm. http://www.inter-fuser.com/2009/07/android-transistions-slide-in-and-slide.html

+0

Bunun için teşekkürler. Bu yaklaşımdan kaçınmak istiyorum, çünkü üç etkinlik (listactivities olan) benzer fakat oldukça ağır bir iş yapıyor (veri tabanından veri almak vb.) – dgraziotin

İlgili konular