2017-04-16 2 views
0

Ich habe ein Fragment, wo Sie tatsächlich 3 Seiten haben, mit denen Sie wischen können. Auf jeder Seite haben Sie eine Standard-Zeichenfolge wie diese "Hallo Welt von Abschnitt:% 1 $ d", die in Strings gespeichert ist. xml „Ändern von TextView Inhalt in Fragment

Und die Java-Klasse Fragment Methode sieht wie folgt aus:

@Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.fragment_generaldiscription, container, false); 
     TextView textView = (TextView) rootView.findViewById(R.id.section_label); 
     textView.setText(getString(R.string.section_format, getArguments().getInt(ARG_SECTION_NUMBER))); 
     textView.setText("test"); // testing purposes 
     return rootView; 
    } 
} 

Meine Frage ist: Ich möchte nicht jede Seite die gleiche Text haben, Abschnitt 1 hat.“ Hallo Welt aus dem Abschnitt: 1 "Abschnitt 2 hat" Hallo Welt aus Abschnitt: 2 "

Ich möchte, dass Abschnitt 1 hat eine andere Zeichenfolge wie" Hallo, das ist Abschnitt 1 Ihres Fragments. "Wie kann ich die verschiedenen Abschnitte in meinem Fragment in Um verschiedene Zeichenketten zu zeigen?

Vielen Dank.

Antwort

1

Es scheint, dass Sie eine Variable brauchen, um verschiedene Strings anzuzeigen. Deshalb funktioniert die strings.xml nicht.


Hier ist meine Lösung

Schritt 1:

Brauch ein Konstruktor, der ein String-Objekt enthält das Textview

Schritt 2 descripbe:

Init drei Fragmente mit verschiedenen Saiten-Objekte in Ihrer FragmentAdapter Klasse

Schritt 3: Testen Sie whther es

well.The Code arbeiten kann, ist ein wenig langweilig, Es ist nicht convinent für mich here.Just zu schreiben versuchen, können Sie es bekommen :)

2

Es sieht aus wie ein Schmerz in den Arsch zu bewältigen. Ich möchte stattdessen Cheesesquare verwenden. Um eine Seite hinzuzufügen brauchen Sie nur: adapter.addFragment(new CheeseListFragment(), "Category 1");, und Anpassungen erfolgen innerhalb der Fragmentklasse

1

Ich denke, auf jeder Seite haben Sie "Hallo Welt aus Abschnitt: 1" und wenn Sie einen anderen Text auf Abschnitt 2 Seite hinzufügen überlappt es die beiden der Text ineinander. Ich habe dieses Problem, dann benutze ich Android: background = "# ffffff" im Layout so Abschnitt 1 Text wird weiß aufgrund der Hintergrundfarbe, wenn Sie eine andere Farbe oder Bild im Hintergrund wollen. und dann wird in Abschnitt 2 nur "Hello world from section: 2" durch xml gesetzt. Dies ist keine perfekte Lösung, aber es funktioniert für mich.

Verwandte Themen