A velho foi mal.. acabei de ver aqui.. não tinha prestado atenção não.. mais assim, pelo poco q eu entendo o putExtra vc so vai conseguir passar quando vc evocar um startActvity como vc ta fazendo com fragment você pode fazer assim:
1 - declare um atributo String de escopo de classe que será o item clicado.
2 - crie um método getMesClicado() que retorne o atributo do passo 1.
3 - no seu fragment utilize para recuperar o valor o seguinte trecho:
String mesClicadoActivityPai = ((SuaActiviyPrincipal) getSherlockActivity()).getMesClicado();
this.mesclick.setText(mesClicadoActivityPai);
Acredito que dessa forma vc vai conseguir resolver seu problema, eu tive que fazer algo semelhante em um app que eu desenvolvi e consegui resolver o problema assim.
T+
--
Cordialmente,
Marcos Reis
Analista de Sistemas / Android
Pontomobi
Any screen,
Anywhere™
São Paulo | Rio | BH | Recife | London
On 06/01/2013, at 15:22, Felippe dos Santos Ferreira <felippenasuacasa@gmail.com> wrote:
o erro é que não passa nada para a outra activity por put extras...
uma activity é ... MainActivity extends SherlockFragmentActivity(aqui te a lista clicada) a outra é Botoes extends Fragment (aqui recebe o item da lista clicada)
Em 6 de janeiro de 2013 15:12, Marcos Reis | .Mobi <marcos.reis@pontomobi.com.br> escreveu:Qual o erro que ta te retornando.--Cordialmente,Marcos ReisAnalista de Sistemas / AndroidPontomobiAny screen,Anywhere™São Paulo | Rio | BH | Recife | London
On 06/01/2013, at 15:09, Felippe dos Santos Ferreira <felippenasuacasa@gmail.com> wrote:--mudei um pouco o codigo da uma olhada....
//assim passa por put extras
listView.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> adapter, View selectedItemView, int posicao,
long id) {
Meses item = (Meses) listView.getAdapter().getItem(posicao);
mesclicado = item.getNomemes().toString();
Toast.makeText(getApplication(), mesclicado, 50).show();
Botoes dpf = new Botoes();
android.app.FragmentTransaction beginTransaction = getFragmentManager().beginTransaction();
beginTransaction.replace(R.id.botoes_fragments, dpf, Botoes.class.getCanonicalName());
Bundle args = new Bundle();
args.putString("NOMES", mesclicado);
dpf.setArguments(args);
beginTransaction.addToBackStack("botoes_fragments");
beginTransaction.commit();
// quando pego o ida da erro.
//Toast.makeText(getApplication(), item.getIdmes(), 500).show();
}
});
//assim tento receber
textlistview = getActivity().getIntent().getStringExtra("NOMES");
this.mesclick = (TextView) botoes.findViewById(R.id.textViewMesClicado);
this.mesclick.setText(textlistview);Em 6 de janeiro de 2013 15:00, Marcos Reis | .Mobi <marcos.reis@pontomobi.com.br> escreveu:
Cara me corrija se eu estiver errado, mas se este trecho do seu código estiver assim mesmo não irá funcionar nunca:public class Botoes extends Fragment {
private TextView mesclick;
private String textlistview = null;
//recebedo putextras o valor do text view
textlistview = getActivity().getIntent().getStringExtra("NOMES");
this.mesclick = (TextView) botoes.findViewById(R.id.textViewMesClicado);
this.mesclick.setText("textlistview");Repare que o seu mesclick.setText você está passando o nome do atributo em forma de string "textListView" você deveria passar:this.mesclick.setText(textListView);Acredito que dessa forma iria funcionar.Qualquer coisa é só falar.Abraços.--Cordialmente,Marcos ReisAnalista de Sistemas / AndroidPontomobiAny screen,Anywhere™São Paulo | Rio | BH | Recife | London
On 06/01/2013, at 12:06, Felippe dos Santos Ferreira <felippenasuacasa@gmail.com> wrote:public class Botoes extends Fragment {
private TextView mesclick;
private String textlistview = null;
//recebedo putextras o valor do text view
textlistview = getActivity().getIntent().getStringExtra("NOMES");
this.mesclick = (TextView) botoes.findViewById(R.id.textViewMesClicado);
this.mesclick.setText("textlistview");--
--
--






0 comentários:
Postar um comentário