Android学习日记

Day 3   

Title 1   UI线程阻塞及优化

//为Button添加一个动画操作的

Button button=(Button)findViewById(R.id.button);//创建按钮

TranslateAnimation animation=new TranslateAnimation(startX,endX,startY,endY);//设置按钮移动的方式 

animation.setRepeat(num);//设置移动的次数 num次

animation.setDuration(time);/设置一次循环的事件 time毫秒

"UI 线程":当一个程序启动后,android系统会为这个应用程序创建一个主线程。这个线层非常重要,它负责渲染视图,分发事件到响应监听器并执行,对界面进行轮询的监听。因此,一般也叫作“UI”线程.

android系统不会给应用进程的多个元素组建多个线程来执行。一个视图(activity)中的多个view组建运行在同一个UI线程中。因此,多个view组建的监听器的执行可能会相互影响。

怎么解决阻塞问题?

在UI线程之外创建一个新的线程!!

post()方法可以解决在新建线程中不能修改组件的限制;

AsyncTask()是在post()基础上的优化,可以方便阅读,便于读者理解。

你可能感兴趣的:(Android学习日记)