/ / não posso mover o conteúdo da tela em dispositivos inferiores a 3.0 android - android, layout

não posso mover o conteúdo da tela em dispositivos inferiores a 3.0 android - android, layout

Eu preciso mover o conteúdo da tela à esquerda, então eu uso esse código para obter o conteúdo

try {
content = ((LinearLayout) act.findViewById(android.R.id.content)
.getParent());
} catch (ClassCastException e) {
/*
* When there is no title bar
* (android:theme="@android:style/Theme.NoTitleBar"), the
* android.R.id.content FrameLayout is directly attached to the
* DecorView, without the intermediate LinearLayout that holds the
* titlebar plus content.
*/
content = (FrameLayout) act.findViewById(android.R.id.content);
}

Notei que em dispositivos com android> 3.0 o conteúdo é definido no bloco try, em dispositivos <3.0 ele entra no bloco catch. Aqui eu movo o conteúdo:

FrameLayout.LayoutParams pr = (android.widget.FrameLayout.LayoutParams) content
.getLayoutParams();
pr.rightMargin = menuSize;
pr.leftMargin = -menuSize;
content.setLayoutParams(pr);

Então, em dispositivos> 3.0, tudo funciona bem, o conteúdo é movido, em dispositivos <3.0, nada acontece, o conteúdo fica sem alterações

Respostas:

0 para resposta № 1

Encontrou a resposta O FrameLayout não leva em consideração as margens se a gravidade não estiver definida.