2016-09-30 5 views
0

나는 Signature Pad을 사용하고 있는데, 내가보기에 덧붙여진 버튼을 Gravity을 사용하여 추가하고 싶습니다.하지만 아무런 변화가 없습니다. 여러 플래그를 시도했는데 모두 똑같이 생겼습니다. 또한 signature 뷰를 메서드의 끝에 layout에 추가하려고 시도했지만 아무 것도 변경되지 않았습니다.왜 내 버튼에 중력이 적용되지 않습니까?

활성 :

[Activity(Label = "Authorize Buyin", ScreenOrientation = Android.Content.PM.ScreenOrientation.Landscape)] 
    public class Sign : Activity 
    { 
     LinearLayout layout; 
     protected override void OnCreate(Bundle savedInstanceState) 
     { 
      base.OnCreate(savedInstanceState); 
      SetContentView(Resource.Layout.sign_dialog); 

      layout = FindViewById<LinearLayout>(Resource.Id.layoutSign); 

      CreateSignaturePad(); 
     } 

     private void CreateSignaturePad() 
     { 
      var signature = new SignaturePadView(this) 
      { 
       StrokeWidth = 3f, 
       BackgroundColor = Android.Graphics.Color.White, 
       StrokeColor = Android.Graphics.Color.Black, 
      }; 

      layout.AddView(signature, 
       new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WrapContent, ViewGroup.LayoutParams.WrapContent)); 

      /* Add Clear Button */ 
      Button btnClear = new Button(this) { Text = "Borrar" }; 
      signature.AddView(btnClear); 



      /* Add Authorize Button */ 
      Button btnAuthorize = new Button(this) { Text = "Authorize" }; 
      btnAuthorize.Gravity = GravityFlags.Center; 
      signature.AddView(btnAuthorize);      
     } 
    } 

레이아웃 :

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/layoutSign" 
    android:orientation="vertical" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:padding="2dp"> 
</LinearLayout> 
+0

가 왜'setGravity (...)를 '사용하지 않는 :

이 내가 마지막으로 그것을 해결하는 방법입니다? – Zarwan

+0

"Android"태그를 삭제해야 할 수도 있습니다. 나는 Xamarin을 사용하고 있으며 setGravity는 존재하지 않지만 대신 그들은 내가 아는 한 Gravity 속성을 사용한다. http://stackoverflow.com/questions/17026596/android-c-sharp-textview-setgravity – Jefecito

+0

아, 알겠습니다. 특급의 나의 범위에서. – Zarwan

답변

0

SignatureView는 RelativeLayout의으로부터 상속된다. signatureSignatureView입니다.

RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
       RelativeLayout.LayoutParams.WrapContent, 
       RelativeLayout.LayoutParams.WrapContent); 
      lp.AddRule(LayoutRules.AlignParentBottom); 

      Button btnAuthorize = new Button(this) { Text = "Authorize" }; 
      btnAuthorize.LayoutParameters = lp; 
      btnAuthorize.Click += BtnAuthorize_Click; 
      signature.AddView(btnAuthorize);  
관련 문제