2012-07-28 116 views
0

我一直在寻找一段时间,但无法找到我的android代码的工作解决方案。至少有一个我能够实现。Android:onTouchEvent开始新的活动

我有一个活动(StartActivity)与几个动画。然后我有一个onTouchEvent。这可以很好地提示一些更多的动画,但是在这之后我想打开一个新的活动。

这里是我的代码:

public class StartActivity extends Activity { 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.start); 

    RunAnimations(R.anim.translate1, R.anim.translate2); 
} 

public void RunAnimations(int t1, int t2) { 
    Animation a = AnimationUtils.loadAnimation(this, t1); 
    a.reset(); 
    Animation b = AnimationUtils.loadAnimation(this, t2); 
    b.reset(); 
    ImageView drop = (ImageView) findViewById(R.id.drop); 
    ImageView iflush = (ImageView) findViewById(R.id.iflush); 
    drop.clearAnimation(); 
    iflush.clearAnimation(); 
    drop.startAnimation(a); 
    iflush.startAnimation(b); 
} 

@Override 
public boolean onTouchEvent(MotionEvent event) { 
    if (event.getAction() == MotionEvent.ACTION_DOWN) { 
     RunAnimations(R.anim.translate3, R.anim.translate4); 
    } 
    return true; 
} 
} 

在的onTouchEvent,呼吁RunAnimations后,我要开始一个新的活动(TipActivity)。就这些。

回答

1

添加另一个活动,你AndroidManifest文件像这样:

<activity 
    android:label="YourActivity" 
    android:name=".YourActivity" >  
    <intent-filter > 
     <action android:name="net.learn2develop.YourActivity" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

然后,你可以这样做(在调用RunAnimations()):

startActivity(new Intent("net.learn2develop.YourActivity")); 

希望有所帮助。

+0

完美。 – yoz1234 2012-07-28 14:48:33

0

使用:

Intent intent=new Intent(context, TipActivity.class); 
startActivity(intent);  
overridePendingTransition(R.anim.translate3, R.anim.translate4); 

^-^