2013-11-16 6 views
0

мне нужно добавить новую кнопку и TextEdit на мой LinearLayout .. если я создаю новый из параметров, кнопки созданы друг над другом ..андроид LinearLayout.LayoutParams добавить новый вид

мой mainactivity:

@Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     MyTouchEventView tv = new MyTouchEventView(this); 
     setContentView(tv); 
     addContentView(tv.btnReset, tv.params); 
     addContentView(tv.btnSave, tv.params2); 
    } 

и MyTouchEventView:

public class MyTouchEventView extends View { 

    public Button btnReset; 
    public Button btnSave; 
    public LinearLayout.LayoutParams params; 
    public LinearLayout.LayoutParams params2; 

    public MyTouchEventView(Context context) { 
     super(context); 

     btnReset = new Button(context); 
     btnReset.setText("Vymazat platno"); 

     btnSave = new Button(context); 
     btnSave.setText("Ulozit"); 


     params = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 
       LinearLayout.LayoutParams.WRAP_CONTENT); 

     btnReset.setLayoutParams(params); 

     params2 = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, 
       LinearLayout.LayoutParams.WRAP_CONTENT); 
     params.setMargins(40, 20, 40, 30); 

     btnSave.setLayoutParams(params2); 

http://i.stack.imgur.com/kvY1T.png

+0

Почему вы не создавать с помощью XML? Его эффективность, чем запись через код –

ответ

0

Почему не вы создаете простой макет для своей деятельности?

main_layout.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:orientation="vertical" > 

    <EditText 
     android:id="@+id/my_edit_text" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:text="myText" /> 

    <Button 
     android:id="@+id/my_button" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_gravity="center_horizontal" 
     android:text="myText" /> 
</LinearLayout> 

Затем в методе OnCreate:

public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main_layout);     
} 

Также см http://developer.android.com/guide/topics/ui/layout/linear.html

Смежные вопросы