1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Android应用启动画面实现

Android应用启动画面实现

时间:2023-11-20 03:06:44

相关推荐

Android应用启动画面实现

学习了网上的各式各样的启动画面后,总结并精简了了一下,自己实测后是有效的,记录一下。

第一种

通过ImageView结合Animation来实现。

首先在Mainfest里设置启动Activity的Theme

android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen"

在xml里拖入一个ImageView,让其填充

<ImageViewandroid:id="@+id/imageView1"android:layout_width="match_parent"android:layout_height="match_parent" />

记得在layout里添加padding,否则会出现边框(影响美观)

android:padding="0dp"

回到Activity

public class MainActivity extends Activity {private ImageView loadImage;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);loadImage = (ImageView) findViewById(R.id.imageView1);Animation animation = new AlphaAnimation(0.5f, 1.0f);animation.setDuration(3000);//持续时间loadImage.startAnimation(animation);animation.setAnimationListener(new LoadAnimation());//设置动画监听器}

然后是动画监听器的部分

public class LoadAnimation implements AnimationListener {@Overridepublic void onAnimationStart(Animation animation) {loadImage.setBackgroundResource(R.drawable.inori014);//配置背景}@Overridepublic void onAnimationEnd(Animation animation) {Intent intent=new Intent(MainActivity.this,NewActivity.class);//结束启动画面(Activity)startActivity(intent);finish();}@Overridepublic void onAnimationRepeat(Animation animation) {}}</span>

第二种

直接用xml设置好背景,然后用hanlder处理消息的机制来进入下一个Activity。

首先,同样设置好Manifest的Theme

xml直接添加背景

android:background="@drawable/inori014"

回到Activity

其中

Handler().postDelayed(Runnable r,long delayMillis)

这句为定一个延时后执行线程r,还是很容易理解的

public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);new Handler().postDelayed(new Runnable() {//延时执行线程@Overridepublic void run() {Intent intent=new Intent(MainActivity.this,NewActivity.class);MainActivity.this.startActivity(intent);MainActivity.this.finish();}}, 3000);}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。