2017-02-08 1 views
0

Пожалуйста, помогите мне, можно ли дублировать этот Linear Layout, который я создал в xml в java?Дублирование линейного макета и его содержимого, которое я создал в макете, программно

<LinearLayout 
    android:id="@+id/linearLayout" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/divider1" 
    android:orientation="vertical" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin"> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="8dp" 
     android:text="Principal" 
     android:textColor="@color/Black" /> 

    <Spinner 
     android:id="@+id/principal" 
     android:layout_width="match_parent" 
     android:layout_height="25dp" 
     android:layout_marginTop="3dp" 
     android:alpha="0.8" 
     android:entries="@array/Principal" /> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight=".4" 
      android:orientation="vertical"> 

      <TextView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="8dp" 
       android:text="Item" 
       android:textColor="@color/Black" /> 

      <Spinner 
       android:id="@+id/item" 
       android:layout_width="match_parent" 
       android:layout_height="25dp" 
       android:layout_marginTop="3dp" 
       android:alpha="0.8" 
       android:entries="@array/Product" /> 
     </LinearLayout> 

     <LinearLayout 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:orientation="vertical"> 

      <TextView 
       android:layout_width="match_parent" 
       android:layout_height="wrap_content" 
       android:layout_marginTop="8dp" 
       android:text="Quantity" 
       android:textColor="@color/Black" /> 

      <Spinner 
       android:id="@+id/qty" 
       android:layout_width="match_parent" 
       android:layout_height="25dp" 
       android:layout_marginTop="3dp" 
       android:alpha="0.8" 
       android:entries="@array/Quantity" /> 
     </LinearLayout> 
    </LinearLayout> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="8dp" 
     android:text="Item Code" 
     android:textColor="@color/Black" /> 

    <EditText 
     android:id="@+id/itemCode" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="3dp" 
     android:alpha="0.8" 
     android:background="@drawable/edittext" 
     android:textColor="@color/Black" /> 

    <TextView 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="8dp" 
     android:text="Remarks per order" 
     android:textColor="@color/Black" /> 

    <EditText 
     android:id="@+id/rmrksPO" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginTop="3dp" 
     android:alpha="0.8" 
     android:background="@drawable/edittext" 
     android:textColor="@color/Black" /> 
</LinearLayout> 

Я хочу линейную компоновку с объектами, которые я хочу, чтобы дублировать быть ниже существующего макета, когда ниже TextView нажата. Спасибо, парни! ПОЖАЛУЙСТА ПОМОГИ!

<LinearLayout 
    android:id="@+id/ll3" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/divider2" 
    android:orientation="vertical" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin"> 

    <TextView 
     android:id="@+id/addNew" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:layout_below="@+id/divider2" 
     android:text="@string/Add_NEw" 
     android:textStyle="bold" /> 
</LinearLayout> 

This is the my layout, when I click the add new item i want to duplicate this layout and display it below

+0

Что вы подразумеваете под "duplicate"? Вы хотите изменить пользовательский интерфейс от первого «LinearLayout» до второго? –

+0

Я загрузил изображение моего макета. –

ответ

0

Вы можете надуть макет:

LayoutInflater inflater = LayoutInflater.from(context); 
View yourLayout = inflater.inflate(yourLayoutId, yourParent, false); 

"yourLayout" будет экземпляр макета в формате XML.

+0

Привет, сэр, я не могу найти это. И что я буду размещать в 'yourLayoutId'? –

0
// Add Linear Layout Run time to Parent Layout, On the click of Textview 
public class DuplicateLayout extends Activity { 

    TextView addNew; 
    LinearLayout ll3,LinearLayoutMain; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_duplicate_layout); 
     LinearLayoutMain = (LinearLayout)findViewById(R.id.LinearLayoutMain); 
     ll3 = (LinearLayout)findViewById(R.id.ll3); 
     addNew = (TextView)findViewById(R.id.addNew); 
     addNew.setOnClickListener(new View.OnClickListener() { 
      @Override 
      public void onClick(View view) { 
       LayoutInflater inflater = (LayoutInflater)getSystemService(DuplicateLayout.LAYOUT_INFLATER_SERVICE); 
       LinearLayout child = (LinearLayout) inflater.inflate(R.layout.activity_duplicate_layout, null); 
       LinearLayoutMain.addView(child, 1); 
      } 
     }); 

    } 
} 
//activity_duplicate_layout.xml 
<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout 
    android:id="@+id/LinearLayoutMain" 
    xmlns:android="http://schemas.android.com/apk/res/android" 
    xmlns:tools="http://schemas.android.com/tools" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:paddingBottom="@dimen/activity_vertical_margin" 
    android:paddingLeft="@dimen/activity_horizontal_margin" 
    android:paddingRight="@dimen/activity_horizontal_margin" 
    android:paddingTop="@dimen/activity_vertical_margin" 
    android:background="#ffffff" 
    android:orientation="vertical" 
    > 

    <LinearLayout 
     android:id="@+id/ll3" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="vertical" 
     android:paddingLeft="@dimen/activity_horizontal_margin" 
     android:paddingRight="@dimen/activity_horizontal_margin"> 

     <TextView 
      android:id="@+id/addNew" 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:layout_below="@+id/divider2" 
      android:text="Add_NEw" 
      android:textStyle="bold" /> 
    </LinearLayout> 
</LinearLayout> 

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

  • Нет связанных вопросов^_^