Editado por Dexter90, 08 April 2014 - 16:56.

onClick - Botão dentro de Fragment
Iniciado por
Dexter90
, Apr 07 2014 22:15
2 respostas a este tópico
#1
Mensagem publicada 07 April 2014 - 22:15
Estou a trabalhar numa aplicação para android que usa Navigation Drawer.
Já percorri várias páginas por esta internet fora, mas sinceramente tenho acabado mais confuso que outra coisa.
Criei a aplicação com o Navigation Drawer como layout para testar diferentes opções mas a verdade é que estou encravado. Aquilo criou bastantes coisas automáticas ficando com as classes:
Main Activity e Navigation Drawer Fragment.
Também me criou vários layouts, tendo a pasta layout activity_main, fragment_main e fragment_navigation_drawer.
O objetivo é eu carregar numa das opções que está na side bar deslizante, e aparecer-me informação especifica, nomeadamente botões. Por exemplo, carregar na opção futebol e ter os botões para primeira liga, segunda liga, terceira liga. Ou então na opção basquetebol e ter a opção notícias, resultados, classificação. Só um exemplo. Ou então aparecer um drop down, também ficaria giro.
Já tentei de algumas maneiras diferentes, fiz botões globais invisives em que lhes dava visibilidade dentro do método onNavigationDrawerItemSelected consoante a opção seleccionada. O problema é que rebenta e não estou a conseguir andar daqui para a frente.
#2
Mensagem publicada 08 April 2014 - 16:26
Já consegui meter lá o botão, a minha dúvida agora é como defino um comportamento para ele, estando ele lá dentro através deste método:
public void onNavigationDrawerItemSelected(int position) { // update the main content by replacing fragments //fragmentManager.beginTransaction().add(R.id.button, PlaceholderFragment.newInstance(position + 4), "555").commit(); if(position == 0) { Fragment fragment = new NetworksButtons(); FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction() .replace(R.id.container, fragment) .commit(); }if(position == 1){ Fragment fragment = new PointsButtons(); FragmentManager fragmentManager = getSupportFragmentManager(); fragmentManager.beginTransaction() .replace(R.id.container, fragment) .commit(); } }
É esta linha: button1.setOnClickListener(new View.OnClickListener()
que me rebenta o sistema neste momento :/
protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mNavigationDrawerFragment = (NavigationDrawerFragment) getSupportFragmentManager().findFragmentById(R.id.navigation_drawer); mTitle = getTitle(); // Set up the drawer. mNavigationDrawerFragment.setUp( R.id.navigation_drawer, (DrawerLayout) findViewById(R.id.drawer_layout)); button1 = (Button) findViewById(R.id.button); button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Toast.makeText(getApplicationContext(), "Portas trancadas", Toast.LENGTH_SHORT).show(); } } ); }
Editado por Dexter90, 08 April 2014 - 16:56.
#3
Mensagem publicada 10 April 2014 - 16:51
o botão parece-me estar bem, mete ai um log do erro