Inflate einer neuen View aus einem Fragment

  • Antworten:2
Hanno Wallah
  • Forum-Beiträge: 49

25.02.2016, 14:02:00 via Website

Mein Fragment hat einen Button, welches ein andere View anzeigen soll als die, die im TabLayout enthalten sind. In der OnClick Methode arbeite ich mit inflater.inflate(R.Layout........) und es wird kein View angezeigt.

Antworten
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

25.02.2016, 14:17:23 via Website

Du musst das Layout schon im Fragment in der onCreateView inflaten und die View dann ausblenden. (View#setVisibility(...))
Wenn du dann in der onClick bist, kannst du die View wieder sichbar machen.

LG Pascal //It's not a bug, it's a feature. :) ;)

Antworten
Hanno Wallah
  • Forum-Beiträge: 49

25.02.2016, 15:44:35 via Website

Hast du noch eine Idee????????????????????
habe so gemacht aber dennoch funktioniert nicht. (siehe unten)

public class YogaMeineBuecher extends Fragment implements View.OnClickListener{
View vFussball;
View vReise;

public  View onCreateView(final LayoutInflater inflater, final ViewGroup container, Bundle savedInstanceState){

    // Layout meineBücher anzeigen                                              funktioniert
    meineBuecher = inflater.inflate(R.layout.yoga_meine_buecher, container, false);
    //
    AssetManager assetManager = getResources().getAssets();
    vFussball = inflater.inflate(R.layout.buch_fussball, container, false);
    TextView tv = (TextView) vFussball.findViewById(R.id.tv_body_fussball);
    SetHtmlText sht = new SetHtmlText();
    sht.htmlText("html_meine_buecher", tv, assetManager);
    vFussball.setVisibility(View.INVISIBLE);

@Override
public void onClick(View view) {
switch (view.getId()){
case (R.id.lesenF):
vFussball.setVisibility(View.VISIBLE); leider funktioniert nicht

— geändert am 26.02.2016, 17:56:28

Antworten