Xamarin.Android: parâmetro de gravidade em DrawerLayout.LayoutParams
Estou tentando criar umDrawerLayout
programaticamente usandoXamarin.Android, mas enfrentei um problema ao tentar adicionar oListView
que deve ser arrastado do lado esquerdo ..
Aqui está o meu código:
DrawerLayout myDrawerLayout = new DrawerLayout(this);
myDrawerLayout.LayoutParameters = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent);
SetContentView(myDrawerLayout);
FrameLayout myFrameLayout = new FrameLayout(this);
myFrameLayout.LayoutParameters = new DrawerLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent);
myFrameLayout.SetBackgroundColor(Android.Graphics.Color.Gray);
myDrawerLayout.AddView(myFrameLayout);
ListView myListView = new ListView(this);
myListView.SetBackgroundColor(Android.Graphics.Color.Green);
myListView.LayoutParameters = new DrawerLayout.LayoutParams( width: 240,
height: DrawerLayout.LayoutParams.MatchParent,
gravity: ????????
);
myDrawerLayout.AddView(myListView);
Como você pode notar .. eu não sabia o que passar comogravity
parâmetro
A definição da função emDrawerLayout
classe é assim:
public LayoutParams(int width, int height, int gravity);
Então eu tenho que passarint
para ogravity
, mas como ??
Eu tentei o seguinte:
myListView.LayoutParameters = new DrawerLayout.LayoutParams( width: 240, height: DrawerLayout.LayoutParams.MatchParent, gravity: Gravity.LEFT);
Isso me dá erro:
'Gravity' não contém uma definição para 'LEFT'
Também tentei:
myListView.LayoutParameters = new DrawerLayout.LayoutParams( width: 240, height: DrawerLayout.LayoutParams.MatchParent, gravity: GravityFlags.Left);
mas me dá um erro:
não pode converter de 'Android.Views.GravityFlags' para 'int'
Espero que você tenha uma idéia sobre a solução .. e desde já obrigado