2014-09-02 2 views
0

UI에서 xml을 사용하지 않습니다. mainlayout의안드로이드에서 xml없이 뷰의 정렬을 설정하는 방법

내 코드 :

public class MainActivity extends ActionBarActivity { 

LinearLayout LinLay; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 

    ScrollView sv = new ScrollView(this); 
    this.setContentView(sv); 

    LinLay = new LinearLayout(this); 
    LinLay.setOrientation(LinearLayout.VERTICAL); 
    LinLay.setBackgroundColor(Color.parseColor("#000000")); 
    sv.addView(LinLay); 

그리고 추가, 글고 치기는 :

Button btn = new Button(this); 
    btn.setBackgroundColor(Color.parseColor("#cb0016")); 
    btn.setText("Btn(0,0)"); 

    LayoutParams btnParams = new LayoutParams(LayoutParams.WRAP_CONTENT, 
      LayoutParams.WRAP_CONTENT); 
    btnParams.width = 300; 
    btnParams.height = 70; 
    btnParams.leftMargin = 0; 
    btnParams.topMargin = 0; 

    btn.setLayoutParams(btnParams); 

    LinLay.addView(btn); } 

EDITTEXT의 수 있어야 X 위치 = 0, Y :

EditText txt = new EditText(this); 
    txt.setBackgroundColor(Color.parseColor("#ff9a16")); 
    txt.setHint("Txt(0,0)"); 

    LayoutParams txtParams = new LayoutParams(LayoutParams.WRAP_CONTENT, 
      LayoutParams.WRAP_CONTENT); 
    txtParams.width = 300; 
    txtParams.height = 70; 
    txtParams.leftMargin = 0; 
    txtParams.topMargin = 0; 

    txt.setLayoutParams(txtParams); 

    LinLay.addView(txt); 

은 마지막으로 버튼을 추가 위치 = 0 MainScreen. MainScreen의 버튼 위치는 X 위치 = 0이고 Y 위치 = 0이어야합니다. 그러나 참조를 취하는 버튼은 Edittext이며 MainScreen의 X : 0, Y : 70 위치를 취합니다.

프로그램 화면 : prntscr.com/4ixo7z LinLay있어 내있는 LinearLayout이 수평 인 경우, 버튼 X의 입장도 취하지

: 300, Y : 0 로고의. MainScreen에서 위치를 잡고 싶습니다. 나는 추천을하고 싶지 않습니다. 도와주세요.

화면의 가로 : prntscr.com/4ixo8i

+0

버튼 안에 텍스트의 위치를 ​​의미합니까? –

+0

아니요 :) 두 개의 위젯이 있습니다. 주황색 ​​Edittext와 빨간색 버튼입니다. MainScreen으로 위치를 정하고 싶습니다. –

+0

이상한 것은 코드를 실행하고 0,0에서만 가져옵니다. 당신이 얻은 것과 원하는 것에 대한 스크린 샷을 공유 할 수 있습니까? –

답변

0
이있는 LinearLayout을 변경하고 RelativeLayout의를 사용

, 방향을 제거합니다. 상대적으로 제품을 추가하면 문제가 해결됩니다.

+0

제안을 적용하지만 작동하지 않습니다. RelativeLayout 일 때 EditText와 Button은 MainScreen에서 X : 0, Y : 0이지만 leftmargin과 topmargin은 작동하지 않습니다. 버튼이 EditText 위에 있고 나는 그들을 배치하지 않습니다. 화면 : http://prntscr.com/4ixze1 –

+0

레이아웃에 텍스트 또는 단추 편집을 추가 할 때 RelativeLayout 매개 변수를 확인하고 패스합니다. – Puneet

+0

전달 방법? 이해하지 마라. –