画像の透明度が徐々に低下
1777 ワード
ログイン画面ボタンをクリックすると、画像の透明度が徐々に低下し、消えてから別の画面に入ります.
public class LoginActivity extends Activity {
//
private Button loginButton;
//
private TextView loginText;
//
private ImageView imagView;
//
private int i_alpha=255;
private Handler mHandler=new Handler();
boolean isShow=false;
private Thread thread;
private Intent intent;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
//
loginButton=(Button)findViewById(R.id.login_in);
loginText=(TextView)findViewById(R.id.logining);
imagView=(ImageView)findViewById(R.id.login_rss);
//
imagView.setAlpha(i_alpha);
isShow=true;
//
mHandler=new Handler(){
@Override
public void handleMessage(Message msg){
super.handleMessage(msg);
imagView.setAlpha(i_alpha);
}
};
// 100ms
thread=new Thread(new Runnable(){
public void run(){
while(isShow){
try{
Thread.sleep(100);
updateAlpha();
}catch(InterruptedException e){
e.printStackTrace();
}
}
}
});
loginButton.setOnClickListener(new OnClickListener(){
public void onClick(View v){
intent=new Intent();
intent.setClass(LoginActivity.this, SelectChannel.class);
//
thread.start();
//
loginButton.setVisibility(View.INVISIBLE);
//
loginText.setVisibility(View.VISIBLE);
}
});
}
//
protected void updateAlpha(){
// 25
if((i_alpha-25)>=0){
i_alpha=i_alpha-25;
}else{
// 25, ,
i_alpha=0;
isShow=false;
startActivity(intent);
LoginActivity.this.finish();
}
//
mHandler.sendMessage(mHandler.obtainMessage());
}
}