mam linearlayout bez dziecka postrzegadynamicznie dodając kilka fragmentów mojego układu działalności
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
</LinearLayout>
i chcę dynamicznie dodać jeden fragment lub dwa fragmenty zgodnie z wymogami w nim. Jestem świadomy dodawania do niego jednego fragmentu, ale jak mogę dynamicznie dodawać do niego dwa fragmenty. Mam dwa fragmenty i wewnątrz każdego fragmentu napisać następujące oncreateview
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
//return super.onCreateView(inflater, container, savedInstanceState);
View v=inflater.inflate(R.layout.frag1, container, false);
v.setLayoutParams(new LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT));
return v;
}
próbuję dodać za pomocą następującego kodu ale drugi fragment nadchodzi nad pierwszym.
FragmentTransaction ft=fm.beginTransaction();
frag1 f=new frag1();
frag2 ff=new frag2();
ft.add(android.R.id.content, f);
ft.add(android.R.id.content, ff);
ft.commit();
uprzejmie zaktualizować sposób, w jaki można to zrobić. dzięki
+1 Ja również poszukuje odpowiedzi na to pytanie ... wydaje takie ważne pytanie, a jednak nie mogę znaleźć odpowiedzi:/- dynamiczne dodawanie dwóch fragmentów w layoucie działania - to wydaje mi się dość standardowym materiałem, ale nie jest nigdzie pokryte afaik. – AgentKnopf
Aktualizacja polega na tym, że nie można dodać dwóch do pliku android.R.id.content, ale do Układu, takiego jak LinearLayout lub anyother z identyfikatorem, jak poniżej: jeśli id to id grupy widoku, to ft.add (R.id .one, f, "one"); ft.add (R.id.one, ff, "two"); ft.commit(); uprzejmie spróbuj tego i zaktualizuj – user2779311
Dziękuję za skontaktowanie się z nami :)! Właściwie to znalazłem sposób na umieszczenie dwóch fragmentów w jednym działaniu. Wszystko, co trzeba zrobić, to mieć dwa pojemniki w układzie - po jednym dla każdego fragmentu, a następnie ustawić na nich ciężar. Na przykład: Pierwszy pojemnik dostaje 30% powierzchni, drugi pojemnik dostaje 70% powierzchni. Jeśli potrzebujesz więcej informacji, daj mi znać. Większość z nich jest skonfigurowana w pliku układu, więc należy zmienić transakcję fragmentów, aby dodać każdy do identyfikatora docelowego kontenera. – AgentKnopf