有人已经发过了,我掐头去尾精简了一下
这种效果跟图和布局有很大关系,并不难。
先看布局:
在看代码:
其他见附件:
这种效果跟图和布局有很大关系,并不难。
先看布局:
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <LinearLayout android:id="@+id/layout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" android:background="@drawable/whatsnew_bg" android:gravity="center_horizontal|bottom" android:visibility="visible" > <Button android:id="@+id/btn_start" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="开始我的性生活" android:textSize="18sp" android:textColor="#FFFFFFFF" android:background="@drawable/button_bg" android:layout_marginBottom="20dip" /> </LinearLayout> <LinearLayout android:id="@+id/animLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <LinearLayout android:id="@+id/leftLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1" > <ImageView android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/whatsnew_left" android:layout_weight="1" /> <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/whatsnew_left_m" /> </LinearLayout> <LinearLayout android:id="@+id/rightLayout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_weight="1" > <ImageView android:layout_width="wrap_content" android:layout_height="wrap_content" android:src="@drawable/whatsnew_right_m" /> <ImageView android:layout_width="fill_parent" android:layout_height="wrap_content" android:src="@drawable/whatsnew_right" android:layout_weight="1" /> </LinearLayout> </LinearLayout> </LinearLayout>
在看代码:
package com.dl.app;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.view.animation.Animation.AnimationListener;
import android.widget.Button;
import android.widget.LinearLayout;
public class TestOpenDoorActivity extends Activity {
private Context context;
private Button btn_start;
private LinearLayout layout;
private LinearLayout animLayout;
private LinearLayout leftLayout;
private LinearLayout rightLayout;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
this.context=this;
initViews();
}
private void initViews(){
btn_start=(Button)findViewById(R.id.btn_start);
btn_start.setOnClickListener(onClickListener);
layout = (LinearLayout) findViewById(R.id.layout);
animLayout = (LinearLayout) findViewById(R.id.animLayout);
leftLayout = (LinearLayout) findViewById(R.id.leftLayout);
rightLayout = (LinearLayout) findViewById(R.id.rightLayout);
}
View.OnClickListener onClickListener=new View.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
switch (v.getId()) {
case R.id.btn_start:
doOpenDoor();
break;
default:
break;
}
}
};
private void doOpenDoor(){
layout.setVisibility(View.GONE);
animLayout.setVisibility(View.VISIBLE);
Animation leftOutAnimation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.translate_left);
Animation rightOutAnimation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.translate_right);
leftLayout.setAnimation(leftOutAnimation);
rightLayout.setAnimation(rightOutAnimation);
leftOutAnimation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
leftLayout.setVisibility(View.GONE);
rightLayout.setVisibility(View.GONE);
Intent intent = new Intent(context,OtherActivity.class);
startActivity(intent);
finish();
overridePendingTransition(R.anim.zoom_out_enter, R.anim.zoom_out_exit);
}
});
}
}
其他见附件: