Crossfading Two Views
来源:互联网 发布:成都编程教育 编辑:程序博客网 时间:2024/05/02 14:37
//实现淡入淡出
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;import android.app.Activity;
import android.app.Fragment;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
public class MainActivity extends Activity {
private View mContentView;
private View mLoadingView;
private int mShortAnimationDuration;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mContentView = findViewById(R.id.content);
mLoadingView = findViewById(R.id.loading_spinner);
// Initially hide the content view.
mContentView.setVisibility(View.GONE);
crossfade();
// Retrieve and cache the system's default "short" animation time.
mShortAnimationDuration = getResources().getInteger(
android.R.integer.config_shortAnimTime);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle action bar item clicks here. The action bar will
// automatically handle clicks on the Home/Up button, so long
// as you specify a parent activity in AndroidManifest.xml.
int id = item.getItemId();
if (id == R.id.action_settings) {
return true;
}
return super.onOptionsItemSelected(item);
}
private void crossfade() {
// Set the content view to 0% opacity but visible, so that it is visible
// (but fully transparent) during the animation.
mContentView.setAlpha(0f);
mContentView.setVisibility(View.VISIBLE);
// Animate the content view to 100% opacity, and clear any animation
// listener set on the view.
mContentView.animate().alpha(1f).setDuration(mShortAnimationDuration)
.setListener(null);
// // Animate the loading view to 0% opacity. After the animation ends,
// // set its visibility to GONE as an optimization step (it won't
// // participate in layout passes, etc.)
mLoadingView.animate().alpha(0f).setDuration(mShortAnimationDuration)
.setListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
mLoadingView.setVisibility(View.GONE);
}
});
}
/**
* A placeholder fragment containing a simple view.
*/
public static class PlaceholderFragment extends Fragment {
public PlaceholderFragment() {
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.fragment_main, container,
false);
return rootView;
}
}
}
0 0
- Crossfading Two Views
- adding animations - Crossfading Two Views
- Adding Animations之Crossfading Two Views
- Crossfading Two Views 淡入淡出的两种观点
- 两个view间淡入淡出 Crossfading Two Views——翻译自developer.android.com Training
- Adding Animation between two views
- 38.Which two statements are true regarding views? (Choose two.)
- 41.Which two statements are true regarding views? (Choose two.)
- DevBytes: CrossFading Animations
- Crossfading (淡入淡出)动画
- Focal length calibration from two views: method and analysis of singular cases
- Android Crossfading animation 淡出淡入动画
- Android Animations(一):Crossfading(淡入淡出)
- views::RepeatController
- views::Background
- views::Border
- views::LayoutManager
- save views
- 使用 Weinre 调试移动网站及 PhoneGap 应用
- Acmer--弱水三千,只取一瓢
- Seam下关于项目的配置文件
- Codeforces 424 C. Magic Formulas
- 安装交叉编译器
- Crossfading Two Views
- HDU2063:Investment-wust9(完全背包典型)
- day45(2.14,4.25)使用窗体frame打印图形,如打印平形四边形
- C++ 使用蚁群算法解决TSP问题 续
- 虚函数
- 了解CORS(跨域资源共享)
- 抽象工厂
- 最大连续递增子序列
- 高清传输三大技术