Я пытаюсь создать приложение, и мне, наконец, удалось реализовать панель навигации, которая переключается между действиями с помощью библиотеки (https://github.com/ittianyu/BottomNavigationViewEx).
Все работает нормально, но при переключении между действиями анимация довольно плохая.
Я нашел учебник, в котором они использовали overridePendingTransition () для добавления анимации, но по какой-то причине я не могу использовать это здесь.
Я уже создал 4 анимации:
slideleft, slideleftout, slideright, sliderightout и добавленная переменная num для отслеживания того, какое действие оно выбрано в настоящее время, и я добавил несколько операторов If, которые проверяют для каждого случая, какую анимацию следует выполнять играть (по крайней мере, это то, что я пытаюсь сделать).
Как мне реализовать эти анимации здесь?
package com.example.score3.Utils;
import android.content.Context;
import android.content.Intent;
import android.support.annotation.NonNull;
import android.support.design.widget.BottomNavigationView;
import android.util.Log;
import android.view.MenuItem;
import com.example.score3.MainActivity;
import com.example.score3.R;
import com.example.score3.SecondActivity;
import com.example.score3.ThirdActivity;
import com.ittianyu.bottomnavigationviewex.BottomNavigationViewEx;
public class BottomNavigationViewHelper {
private static final String TAG = "BottomNavigationViewH";
static int num = 0;
public static void setupBottomNavigationView(BottomNavigationViewEx bottomNavigationViewEx){
Log.d(TAG, "setupBottomNavigationView: Setting up BNV");
bottomNavigationViewEx.enableAnimation(false);
bottomNavigationViewEx.enableItemShiftingMode(false);
bottomNavigationViewEx.enableShiftingMode(false);
bottomNavigationViewEx.setIconSize(30,30);
}
public static void enableNavigation(final Context context, BottomNavigationViewEx view){
view.setOnNavigationItemSelectedListener(new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem menuItem) {
switch (menuItem.getItemId()){
case R.id.ic_league:
Intent intent1 = new Intent(context, MainActivity.class);//ACTIVITY_NUM = 0;
context.startActivity(intent1);
if(num>0){
}
num = 0;
break;
case R.id.ic_csgo:
Intent intent2 = new Intent(context, SecondActivity.class);//ACTIVITY_NUM = 1;
context.startActivity((intent2));
if (num==0) {
} else {
}
num = 1;
break;
case R.id.ic_starcraft2:
Intent intent3 = new Intent(context, ThirdActivity.class);//ACTIVITY_NUM = 2;
context.startActivity(intent3);
if (num<2){
}
num = 2;
break;
}
return false;
}
});
}
}