Я хочу иметь в своем приложении facebook как меню. На этом есть много потоков, и все они предлагают использовать библиотеку, которая на самом деле просто снимает скриншот экрана и скользит по этому изображению вправо, чтобы показать меню с левой стороны и слайд-изображение с некоторым переходом. Но в этом случае макет справа не доступен для клика с его изображения.
Но у меня есть еще один способ сделать это, в котором у меня есть Root Layout, у которого уже есть макет меню и макет контента. Но корневой макет задает отрицательный запас по направлению к левому, поэтому он не виден. Как это -
Когда пользователь нажимает кнопку меню, макет меню сдвигается вправо, а левый край корневого макета установлен на 0. Теперь мы видим, что это -
Теперь Настоящая проблема начинается здесь
Я хочу сместить оба макета с некоторой анимацией. Поэтому, когда я аниматирую макет меню и макет контента, анимация для обоих макетов не имеет такой же скорости, даже если я применяю к ней одну и ту же анимацию. Поэтому я попытался Сжать ROOT LAYOUT только вправо/влево, установив для него поле. Но при этом на экране ничего не отображается. Где я иду не так. Здесь показано, как я устанавливаю маржу -
int width = leftLayout.getWidth();
isLayoutShown = !isLayoutShown;
if(isLayoutShown){
rootLayoutParams.setMargins(0, 0, 0, 0);
rootLayout.setLayoutParams(rootLayoutParams);
}else{
rootLayoutParams.setMargins(-width, 0, 0, 0);
rootLayout.setLayoutParams(rootLayoutParams);
}