ActionBar diferente para cada fragment
Galera, alguém tem ideia de como fazer isso:
Cada fragment ter uma actionbar diferente
Alguém pode me dar uma luz, ajuda, o que vier agradeço.
Cada fragment ter uma actionbar diferente
Alguém pode me dar uma luz, ajuda, o que vier agradeço.
Frederico Brigatte***
Curtidas 1
Respostas
Karla Nikiteko
24/10/2013
Oi Frederico, vi seu post e observando a data, acredito que vc de alguma forma tenha descoberto como fazer o item em questao.. Sou iniciante e estou com a mesma dúvida já postei esta mesma questao em diversos tutoriais... eu até consigo exibir os icones de menu diferentes em cada tab do meu fragment, mas nao consigo fazer os botoes do menu abrirem outras janelas. Poderia me ajudar e me dizer se conseguiu e como vc fez.
GOSTEI 0
Alessandro Ribeiro
24/10/2013
O que você quer fazer?
GOSTEI 0
Karla Nikiteko
24/10/2013
Gostaria de mudar os icones do action bar dinamicamente, e fazer com que os icones abram outras pages já vi a documentacao do android development e estou com dificuldades de entender e reproduzir gostaria de um exemplo de como fazer segue meu codigo abaixo :
** * Created by karla on 27/10/15. */ import android.app.ActionBar; import android.content.Intent; import android.content.res.Resources; import android.graphics.drawable.Drawable; import android.os.Bundle; import android.support.design.widget.TabLayout; import android.support.v4.view.ViewPager; import android.support.v7.app.AppCompatActivity; import android.support.v7.widget.Toolbar; import android.text.TextDirectionHeuristic; import android.view.Gravity; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.TextView; import org.w3c.dom.Text; import brliberty.com.tecner.www.liberty.view.Settings; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); setSupportActionBar(toolbar); TabLayout tabLayout = (TabLayout) findViewById(R.id.tab_layout); tabLayout.addTab(tabLayout.newTab().setText("Conversas")); tabLayout.addTab(tabLayout.newTab().setText("Contatos")); tabLayout.setTextAlignment(TextView.TEXT_ALIGNMENT_TEXT_END); final ViewPager viewPager = (ViewPager) findViewById(R.id.pager); final PagerAdapter adapter = new PagerAdapter (getSupportFragmentManager(), tabLayout.getTabCount()); viewPager.setAdapter(adapter); viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout)); tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() { @Override public void onTabSelected(TabLayout.Tab tab) { viewPager.setCurrentItem(tab.getPosition()); } @Override public void onTabUnselected(TabLayout.Tab tab) { } @Override public void onTabReselected(TabLayout.Tab tab) { } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { return false; } } package brliberty.com.tecner.www.liberty; /** * Created by karla on 27/10/15. */ import android.content.Intent; import android.os.Bundle; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import brliberty.com.tecner.www.liberty.view.Settings; public class HistoricoConversas extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.historico_conversas, container, false); } @Override public void onCreate(Bundle savedInstanceState) { setHasOptionsMenu(true); super.onCreate(savedInstanceState); } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.historicoconversa, menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { Log.d("onOptionsItemSelected", "yes"); switch (item.getItemId()) { case R.id.search: Intent intent = new Intent(getActivity().getBaseContext(), Search_talking.class); startActivity(intent); return true; case R.id.ballon: intent = new Intent(getActivity().getBaseContext(), Talking.class); startActivity(intent); return true; case R.id.action_settings: intent = new Intent(getActivity().getBaseContext(), Settings.class); startActivity(intent); return true; default: break; } return false; } } package brliberty.com.tecner.www.liberty; /** * Created by karla on 27/10/15. */ import android.os.Bundle; import android.support.v4.app.Fragment; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; public class Contatos extends Fragment { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.contatos, container, false); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setHasOptionsMenu(true); } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { inflater.inflate(R.menu.contatos, menu); } @Override public boolean onOptionsItemSelected(MenuItem item) { Log.d("onOptionsItemSelected", "yes"); switch (item.getItemId()) { case R.id.search: return false; case R.id.add_people: return false; case R.id.action_settings: return false; default: return false; } } }
GOSTEI 0
Réulison Silva
24/10/2013
Então, a DevMedia acabou de lançar um curso justamente sobre como criar um menu no Android. Espero ter ajudado!
GOSTEI 0