2015-12-16 3 views
0

Я хочу добавить конкретный макет до 14 просмотров. Так что макет можно добавить до 14 раз не после этого. У меня есть следующий макет назначения после нажатия на следующий пункт назначения, который должен быть добавлен в макет.Как добавить фрагмент несколько раз в родительский макет?

Для этого я выбрал фрагмент. Теперь я могу добавить фрагмент onClick следующего макета назначения. Но ничего не происходит, когда я снова нажимаю на следующий макет назначения. Как я могу добавить это до 14 раз ??

И у меня есть схема удаления адресата. OnClick этого макета должен проскользнуть вправо и должен быть удален анимацией. Как я могу это достичь?

Я хочу сделать так: enter image description here

GoBoxActivity

nextDestination.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

       //addedDestination.setVisibility(View.VISIBLE); 
       //removeDestination.setVisibility(View.VISIBLE); 

       fragment = new NextDestinationFragment(); 
       FragmentManager fragmentManager = getSupportFragmentManager(); 
       fragmentManager.beginTransaction().replace(R.id.container, fragment).commit(); 


     } 
    }); 

Фрагмент макета

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent" 
    android:orientation="vertical" 
    android:layout_height="wrap_content" 
    android:layout_marginTop="10dp" 
    android:layout_weight="1.00" 
    android:background="@android:color/white" 
    android:layout_marginLeft="15dp" 
    android:layout_marginRight="15dp" 
    android:id="@+id/LinearAddedDestination"> 

    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:text="DESTINATION" 
      android:layout_marginStart="20dp" 
      android:layout_marginTop="20dp" /> 
     <LinearLayout 
      android:layout_width="wrap_content" 
      android:layout_height="40dp" 
      android:orientation="horizontal" 
      android:background="@drawable/shape" 
      android:gravity="right" 
      android:layout_gravity="center|right" 
      android:layout_marginTop="10dp" 
      android:layout_marginBottom="10dp" 
      android:layout_marginLeft="80dp"> 
      <ImageView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:background="@drawable/ic_clear_black_18dp" 
       android:layout_marginLeft="05dp" 
       android:layout_marginTop="05dp" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="REMOVE" 
       android:layout_gravity="center" 
       android:layout_marginLeft="05dp" 
       android:textSize="14sp" 
       android:layout_marginRight="15dp" /> 
     </LinearLayout> 
    </LinearLayout> 
    <ImageView 
     android:layout_width="match_parent" 
     android:layout_height="08dp" 
     android:background="@drawable/line2"/> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <ImageView 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:layout_marginStart="20dp" 
      android:background="@drawable/ic_place_black_48dp" 
      android:layout_marginTop="05dp" 
      android:layout_gravity="center" /> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:drawableEnd="@drawable/ic_chevron_right_black_24dp" 
      android:layout_marginEnd="10dp" 
      android:text="@string/Loc" 
      android:layout_gravity="center" 
      android:layout_marginTop="05dp" 
      android:textAppearance="@android:style/TextAppearance.Medium" 
      android:cursorVisible="false"/> 

    </LinearLayout> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:hint="Street/Building/Place" 
     android:layout_marginStart="48dp"/> 
    <LinearLayout 
     android:orientation="horizontal" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content"> 

     <ImageView 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:layout_marginStart="20dp" 
      android:background="@drawable/ic_description_black_48dp" 
      android:layout_marginTop="10dp" /> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="45dp" 
      android:layout_marginEnd="10dp" 
      android:hint="@string/LocationDetails"/> 

    </LinearLayout> 

    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:layout_marginStart="48dp" 
     android:hint="@string/HouseDetails" /> 

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

     <ImageView 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:layout_marginStart="20dp" 
      android:background="@drawable/ic_person_black_48dp" 
      android:layout_marginTop="05dp" /> 

     <TextView 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginEnd="10dp" 
      android:text="@string/additionalContact" 
      android:textAppearance="?android:attr/textAppearanceMedium" 
      android:drawableEnd="@drawable/ic_expand_more_black_24dp" 
      android:layout_marginTop="08dp" 
      android:layout_marginStart="05dp" /> 
    </LinearLayout> 
    <LinearLayout 
     android:orientation="vertical" 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:layout_marginStart="60dp" 
     android:layout_marginEnd="50dp" 
     android:layout_gravity="center" 
     android:visibility="gone" 
     android:layout_marginTop="20dp"> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:hint="Name" 
      android:layout_gravity="center"/> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="wrap_content" 
      android:layout_weight="1" 
      android:hint="Phone" 
      android:layout_gravity="center" 
      /> 

     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:textAppearance="?android:attr/textAppearanceSmall" 
      android:text="@string/or" 
      android:layout_gravity="center" 
      android:layout_marginTop="20dp" /> 

     <LinearLayout 
      android:layout_width="220dp" 
      android:layout_height="40dp" 
      android:background="@drawable/shape" 
      android:layout_gravity="center_horizontal"> 


      <ImageButton 
       android:layout_width="20dp" 
       android:layout_height="20dp" 
       android:background="@drawable/phone2" 
       android:layout_gravity="center" 
       android:layout_marginStart="30dp" /> 

      <TextView 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:textAppearance="?android:attr/textAppearanceSmall" 
       android:text="@string/addFromContacts" 
       android:layout_gravity="center" 
       android:layout_marginStart="20dp" /> 
     </LinearLayout> 

    </LinearLayout> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceSmall" 
     android:layout_marginLeft="48dp" 
     android:hint="@string/contact1" 
     android:layout_marginTop="10dp" /> 
    <LinearLayout 
     android:layout_width="match_parent" 
     android:layout_height="wrap_content" 
     android:orientation="horizontal" 
     android:focusable="true" 
     android:focusableInTouchMode="true"> 

     <ImageView 
      android:layout_width="25dp" 
      android:layout_height="25dp" 
      android:layout_marginStart="20dp" 
      android:background="@drawable/ic_description_black_48dp" 
      android:layout_marginTop="10dp" /> 

     <EditText 
      android:layout_width="match_parent" 
      android:layout_height="45dp" 
      android:layout_marginEnd="10dp" 
      android:hint="Instruction" 
      android:layout_gravity="center" 
      android:layout_marginLeft="10dp" /> 

    </LinearLayout> 

</LinearLayout> 

Может кто-нибудь помочь, пожалуйста ..?

ответ

0

Вам необходимо реализовать FragmentAdapter для управления несколькими фрагментами. Затем вам нужно раздувать эти фрагменты в виде ListView или ViewPager. Посмотрите на this или that учебник.

Используя OnTouchListener, вы можете реализовать жестовые салфетки для удаления ваших фрагментов из списка/пейджера.

Надеюсь, это поможет. Cheers

0

Вы должны использовать fragmentManager.beginTransaction().add(R.id.container, fragment), чтобы добавить новый Fragment и использовать remove(), чтобы удалить его.

Для анимации, вы можете использовать fragmentManager.beginTransaction(). setTransition() установить анимацию, Android предлагает при добавлении фрагмента removed.If вы хотите реализовать пользовательскую анимацию, вы можете использовать fragmentTransaction.setCustomAnimations(enterAnimation,exitAnimation), и написать две анимации в файле XML.

Надеюсь, это может вам помочь.

+0

Благодарим за внимание. Его добавление только один раз происходит с помощью фрагмента.Manager.beginTransaction(). Add (R.id.container, fragment); @SamMao –

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