2017-07-18 2 views
0

Lorsque je change l'orientation de mon téléphone portable, le contenu du texte n'est pas sauvegardé et le texte par défaut est mis dans le textview, dans mon manifeste android dans mon activité Cafeteria J'aiOrientation avec des fragments, le texte n'est pas enregistré

android:configChanges="keyboardHidden|orientation" 

Cafétéria

public class Cafeteria extends BaseActivity { 

private SectionsPagerAdapter mSectionsPagerAdapter; 


private ViewPager mViewPager; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_cafeteria); 

    /*Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); 
    setSupportActionBar(toolbar);*/ 

    mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager()); 


    mViewPager = (ViewPager) findViewById(R.id.container); 
    mViewPager.setAdapter(mSectionsPagerAdapter); 

    TabLayout tabLayout = (TabLayout) findViewById(R.id.tabs); 
    tabLayout.setupWithViewPager(mViewPager); 

} 


@Override 
public boolean onCreateOptionsMenu(Menu menu) { 

    getMenuInflater().inflate(R.menu.menu_cafeteria, menu); 
    return true; 
} 

@Override 
public boolean onOptionsItemSelected(MenuItem item) { 

    int id = item.getItemId(); 
    if (id == R.id.action_settings) { 
     return true; 
    } 

    return super.onOptionsItemSelected(item); 
} 


public class SectionsPagerAdapter extends FragmentPagerAdapter { 

    public SectionsPagerAdapter(FragmentManager fm) { 
     super(fm); 
    } 

    @Override 
    public Fragment getItem(int position) { 
     switch (position){ 
      case 0: 
       Oferta oferta = new Oferta(); 
       return oferta; 
      case 1: 
       MenuCafe men = new MenuCafe(); 
       return men; 
      case 2: 
       Carta carta = new Carta(); 
       return carta; 
      default: 
       return null; 
     } 
    } 

    @Override 
    public int getCount() { 
     // Show 3 total pages. 
     return 3; 
    } 

    @Override 
    public CharSequence getPageTitle(int position) { 
     switch (position) { 
      case 0: 
       return getString(R.string.ofertas); 
      case 1: 
       return getString(R.string.menu); 
      case 2: 
       return getString(R.string.carta); 
     } 
     return null; 
    } 
} 

MenuCafe

public class MenuCafe extends Fragment{ 
    private RecyclerView recyclerView; 
    private LinearLayoutManager linearLayoutManager; 
    private AdaptadorMenu adapter; 
    private List<Menu> menu; 




    @Override 
    public View onCreateView(LayoutInflater inflater, ViewGroup container, 
          Bundle savedInstanceState) { 
     View rootView = inflater.inflate(R.layout.fragment_menu, container, false); 
     recyclerView = (RecyclerView) rootView.findViewById(R.id.recycler_view_menu); 
     menu = new ArrayList<>(); 
     load_data_from_server(0); 
     linearLayoutManager = new LinearLayoutManager(getContext()); 
     recyclerView.setLayoutManager(linearLayoutManager); 
     adapter = new AdaptadorMenu(getContext(),menu); 
     recyclerView.setAdapter(adapter); 
     return rootView; 
    } 
} 

Nous vous remercions de l'aide

+0

pouvez-vous partager votre fichier de mise en page (s)? –

Répondre

0

Essayez de donner ce dans le fichier manifeste Android

android:screenOrientation="portrait" 
0
  • Vous devez enregistrer le contenu du texte, parce que lorsque l'écran de rotation, votre activité réinitialise le cycle de vie d'Android , identique au premier ouvert.
  • Voir comment enregistrer l'état ici: Losing data when rotate screen