Ver mensagens sem resposta | Ver tópicos ativos Hoje é 12 Nov 2019, 09:55



Responder Tópico  [ 5 Mensagens ] 
 Tela de Preferências [ PARTE 2 ] 
Autor Mensagem
Google employee
Google employee

Data de registro: 01 Jul 2013, 13:45
Mensagens: 2735
Localização: Rio de Janeiro
Mensagem Tela de Preferências [ PARTE 2 ]
PARTE 2

Continuação da tela de preferências, parte 1 viewtopic.php?f=7&t=26695

Decidi usar um menu ao invés de um botão, por ser usado dessa forma na maioria dos aplicativos. A classe responsável por mostrar os textos que recuperam os valores:


public class Inicio extends Activity {

    private TextView t_volume;
    private TextView t_campeao;
    private TextView t_nome;
    private TextView t_ringtone;
   
    private SharedPreferences preferencias;
   
    @Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.inicio);
       
        preferencias = PreferenceManager.getDefaultSharedPreferences(this);
       
        t_volume = (TextView) findViewById(R.id.volume);
        t_campeao = (TextView) findViewById(R.id.campeao);
        t_nome = (TextView) findViewById(R.id.nome);
        t_ringtone = (TextView) findViewById(R.id.ringtone);
    }
   
    // Setar os textos assim que a Atividade for iniciada
    @Override
    protected void onStart() {
        super.onStart();
        // Volume
        boolean silencioso = preferencias.getBoolean("chave_checkbox", true);
        if (silencioso) {
            t_volume.setText("O aparelho está no modo silencioso. \n");
        } else {
            t_volume.setText("O aparelho não está no modo silencioso. \n");
        }
        // Campeão da Copa
        String selecao = preferencias.getString("chave_lista", "Brasil");
        t_campeao.setText(selecao + " vai ser campeão! \n");
        // Nome
        String nome = preferencias.getString("chave_campo", "Sem Nome");
        t_nome.setText("Meu nome é " + nome + "\n");
        // Ringtone
        String ringtone = preferencias.getString("chave_ringtone", "Toque predefinido");
        t_ringtone.setText("O ringtone escolhido se localiza em " + ringtone + "\n");
    }
   
    // Cria um menu de opções
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.menu, menu);
        return super.onCreateOptionsMenu(menu);
    }
   
    // Responsável por tratar um item selecionado no menu
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.menu_preferencias : configuracoes();
            break;
        }
        return super.onOptionsItemSelected(item);
    }
   
    private void configuracoes() {
        Intent i = new Intent(this, Preferencias.class);
        startActivity(i);
    }
}
 


E a tela de configurações:


public class Preferencias extends PreferenceActivity {
   
    private ListPreference lista;
   
    @Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        addPreferencesFromResource(R.xml.preferencias);//Substitui o método setContentView
       
        lista = (ListPreference) findPreference("chave_lista");//Subsititui o método findViewById.
        lista.setOnPreferenceChangeListener(preferenciaEscolhida);
    }
   
    // Definir o valor da opção selecionada na ListPreference
    private Preference.OnPreferenceChangeListener preferenciaEscolhida = new Preference.OnPreferenceChangeListener() {
        public boolean onPreferenceChange(Preference p, Object valor) {
            lista.setValue(valor.toString());
            return true;
        }
    };
}
 


Espero que isso posa ajudar à alguém, valeu!

_________________
Quando seu problema for resolvido, clique na opção Editar no lado superior direito da sua primeira mensagem e coloque [Resolvido] no título.
Se resolveu o problema sozinh@, não esqueça de postar a solução, ela ajuda usuários em buscas no fórum.
Use os marcadores java e xml quando for postar.

Aprenda Java com esta apostila.


15 Fev 2014, 00:01
Perfil WWW
Google employee
Google employee

Data de registro: 28 Jun 2012, 19:13
Mensagens: 1308
Localização: Itaperuna-RJ
Mensagem Re: Tela de Preferências [ PARTE 2 ]
Bom trabalho! Parabéns!

_________________
Powell


15 Fev 2014, 12:28
Perfil
Google employee
Google employee

Data de registro: 01 Jul 2013, 13:45
Mensagens: 2735
Localização: Rio de Janeiro
Mensagem Re: Tela de Preferências [ PARTE 2 ]
Obrigado, raphael! /uu

_________________
Quando seu problema for resolvido, clique na opção Editar no lado superior direito da sua primeira mensagem e coloque [Resolvido] no título.
Se resolveu o problema sozinh@, não esqueça de postar a solução, ela ajuda usuários em buscas no fórum.
Use os marcadores java e xml quando for postar.

Aprenda Java com esta apostila.


15 Fev 2014, 13:21
Perfil WWW
Android application
Android application

Data de registro: 17 Mar 2015, 21:54
Mensagens: 70
Localização: Florianópolis-SC
Mensagem Re: Tela de Preferências [ PARTE 2 ]
Com certeza me ajudou bastante, kaito. Excelente tutorial, muito obrigado!

_________________
"Se você pensa que pode, ou se pensa que não pode, de qualquer forma, você está certo." - Henry Ford.


10 Abr 2015, 12:46
Perfil
Google employee
Google employee

Data de registro: 01 Jul 2013, 13:45
Mensagens: 2735
Localização: Rio de Janeiro
Mensagem Re: Tela de Preferências [ PARTE 2 ]
Valeu!

_________________
Quando seu problema for resolvido, clique na opção Editar no lado superior direito da sua primeira mensagem e coloque [Resolvido] no título.
Se resolveu o problema sozinh@, não esqueça de postar a solução, ela ajuda usuários em buscas no fórum.
Use os marcadores java e xml quando for postar.

Aprenda Java com esta apostila.


11 Abr 2015, 09:47
Perfil WWW
Mostrar mensagens anteriores:  Organizar por  
Responder Tópico   [ 5 Mensagens ] 

Quem está online

Usuários vendo este fórum: adelar, ademilson, alansousa, albinoneto, Alessandro Tavares, alexmarcolongo, alexvbh, allart, alsimoes, Analista, Andrey, Aniquiler, arquivo51, Berbert, billsombrio, brpiassa, Brunohc, caciara, Captain Typho, carlos rodrigues, cavenaghi, celiapinheiro, Chassot, CKorneLL, cosmotheoro, criscmaia, cyzko, dannieltec, Darth Maul, Darth Plagueis, Darth Sidious, David, dchechetto, dreyer, DroidBot, edwarvelarde, Francisco_Geraldo, free_w3000, freina, furlanrapha, gabrielpg, gapler, Governador Wilhuff Tarkin, guilhermepilotti, guitarro17, gusrp, helder, humberto, HyagoRules, icarodavi, ice, Ielo8, ijsilvestre, inaciofernandes, jacard, jacksaum, jacksonst, José Guilherme, Jota, jrchuteboxe, julianafsa, jwv, kidush, Kureiton, leo, leosl81, lfirpo, linukiss, luciocamilo, luizfilipe, luizneto79, Luna, madeinnordeste, malucouto, mapis, Marcelo Lima, marceloaragao, marcosandreao, marcosf63, Matheus562, MauNunes, mauriciomag, Michel, mlemos, mmfsndroid, monteirojp, mrangel, MSN NewsBlogs, mtomazzi, n3t0, nandopierre, neimarguerra, nfaria, onaiggac, PAMinhoto, pamonteiro, paulanegreiros, pedro, pemam.com.br, pumadeejay, Ranieri, regis.ror, renata, Rickxdx, rixargolo, rocha, rogeriokta, SERGIO RODRIGUES, shibutani, SirBagda, taluna, tavares767, Telekom [Bot], Teodoro, thienne, ThiMatsu, tiago, Tiago Sousa Roch, tiagoxv, Topeca, ubiratan, wingdoido e 1 visitante


Você não pode criar novos tópicos neste fórum
Você não pode responder tópicos neste fórum
Você não pode editar suas mensagens neste fórum
Você não pode excluir suas mensagens neste fórum
Você não pode enviar anexos neste fórum

Procurar por:
cron

© 2007 - 2016 Portal Android - Comunidade de Desenvolvedores Android

Estamos no Linkedin    Siga-nos no twitter


Powered by phpBB - Hospedado por Bemobi