Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
1. Использование hardware accelaration. Позволяет улучшить плавность ui, анимации за счет предарительной отрисовки и хранения этих отрисовок в памяти (вместо динамической постоянной отрисовки и перерисовки)
<application
android:hardwareAccelerated="true"
и в самом окне public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
View.setLayerType(View.LAYER_TYPE_HARDWARE, null);
ObjectAnimator animator = ObjectAnimator.ofFloat(view, "rotationY", 180);
animator.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
view.setLayerType(View.LAYER_TYPE_NONE, null);
}
});
animator.start();
View.setLayerType(View.LAYER_TYPE_HARDWARE, null), а после анимации снимаете данный флаг: View.setLayerType(View.LAYER_TYPE_NONE, null) .У Гугла написано, что hardware accelaration для всех стандартных view включен по-умолчанию.
Если имеем обычный массив, то лучше перевести его в ArrayList, а затем весь перебрать.
6. External storage — no hard code!
myFile = new File("/sdcard/" + txtName.getText() + ".txt");
myFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/"+ txtName.getText() + ".txt");
Best practices от Google по разработке Android приложений