Android Open Source - ReqDroid Caracteristicas Usuario Fragment






From Project

Back to project page ReqDroid.

License

The source code is released under:

GNU General Public License

If you think the Android project ReqDroid listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

/*
 * Este arquivo esta sujeito aos termos e condicoes definidos
 * no arquivo 'LICENSE.txt, o qual e parte deste pacote de codigo fonte.
 *//* ww w.  jav  a  2 s  .c  om*/

package com.vrs.reqdroid.fragments;



import android.content.Intent;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.support.v4.app.NavUtils;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.RadioGroup;

import com.vrs.reqdroid.R;
import com.vrs.reqdroid.activities.TelaPrincipalActivity;
import com.vrs.reqdroid.dao.BDGerenciador;
import com.vrs.reqdroid.util.ProjetoUtils;


/**
 * Implementa a tela de caracteristicas do usuario do aplicativo.
 *
 * @author Vinicius Rodrigues Silva <vinicius.rodsilva@gmail.com>
 * @version 1.0
 */
public class CaracteristicasUsuarioFragment extends Fragment {
  
  private int idProjeto;
  private RadioGroup radioGroupExperiencia;
  private RadioGroup radioGroupPericia;
  private CheckBox checkBoxTreinamento;
    private View rootView;

    public CaracteristicasUsuarioFragment() {
        // Empty constructor required for fragment subclasses
    }

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        rootView = inflater.inflate(R.layout.caracteristicas_usuario, container, false);
        getActivity().setTitle(getResources().getStringArray(R.array.titulos_funcionalidades_array)[1]);
        init();   
        carregaCaracteristicasUsuario();
        atualizaCaracteristicas();
        return rootView;
    }
    
    /**
     * Carrega as caracteristicas do usuario do projeto.
     */
    private void carregaCaracteristicasUsuario()
    {
       carregaCaracteristicasUsuarioBD(idProjeto);      
    }
    
    /**
     * Carrega a lista de caracteristicas do usuario a partir do banco de dados do aplicativo.
     * 
     * @param idProjeto O id do projeto a ter suas caracteristicas do usuario carregadas.
     */
    private void carregaCaracteristicasUsuarioBD(int idProjeto) 
    {
    int experiencia = BDGerenciador.getInstance(getActivity()).selectExperienciaUsuario(idProjeto);
    int pericia = BDGerenciador.getInstance(getActivity()).selectPericiaUsuario(idProjeto);
    int treinamento = BDGerenciador.getInstance(getActivity()).selectTreinamentoUsuario(idProjeto);
    
    switch(experiencia) {
       case 1: radioGroupExperiencia.check(R.id.radioExperienciaBaixo);
               break;
       case 2: radioGroupExperiencia.check(R.id.radioExperienciaMedio);
              break;    
       case 3: radioGroupExperiencia.check(R.id.radioExperienciaAlto);
              break;  
    }
    
    switch(pericia) {
       case 1: radioGroupPericia.check(R.id.radioPericiaBaixo);
              break;   
       case 2: radioGroupPericia.check(R.id.radioPericiaMedio);
               break;  
       case 3: radioGroupPericia.check(R.id.radioPericiaAlto);
               break;  
    }
    
    switch(treinamento) {
       case 0: checkBoxTreinamento.setChecked(false);
               break;  
       case 1: checkBoxTreinamento.setChecked(true);
               break;  
    }
  }

    /**
     * Atualiza as caracteristicas do usuario no banco de dados do aplicativo quando uma das opcoes 
     * da interface grafica e selecionada.
     */
  private void atualizaCaracteristicas()
    {  
    radioGroupExperiencia.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            public void onCheckedChanged(RadioGroup rg, int checkedId) {
                 BDGerenciador.getInstance(getActivity()).updateExperiencia(idProjeto, getExperienciaSelecionada());
            }
       });
      
        radioGroupPericia.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            public void onCheckedChanged(RadioGroup rg, int checkedId) {
                 BDGerenciador.getInstance(getActivity()).updatePericia(idProjeto, getPericiaSelecionada());
            }
       });
      
      checkBoxTreinamento.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
            public void onCheckedChanged(CompoundButton buttonView,
                    boolean isChecked) {
              BDGerenciador.getInstance(getActivity()).updateTreinamento(idProjeto, getTreinamentoSelecionado());
            }
        });
    }
  
  /**
   * Retorna o indice que representa a experiencia selecionada na interface grafica.
   * 
   * @return O indice da experiencia do usuario
   */
  private int getExperienciaSelecionada()
  {          
    int experienciaSelecionada = radioGroupExperiencia.getCheckedRadioButtonId();
     
    switch (experienciaSelecionada) {
      case R.id.radioExperienciaBaixo : return 1;
      case R.id.radioExperienciaMedio : return 2;                              
      case R.id.radioExperienciaAlto  : return 3;                              
    }
    return 2;
  }
  
  /**
   * Retorna o indice que representa a pericia selecionada na interface grafica.
   * 
   * @return O indice da pericia do usuario
   */
  private int getPericiaSelecionada()
  {          
    int periciaSelecionada = radioGroupPericia.getCheckedRadioButtonId();
     
    switch (periciaSelecionada) {
      case R.id.radioPericiaBaixo : return 1;
      case R.id.radioPericiaMedio : return 2;                              
      case R.id.radioPericiaAlto  : return 3;                              
    }
    return 2;
  }
  
  /**
   * Retorna o indice que representa o item "Treinamento do usuario" selecionado na interface grafica.
   * 
   * @return O indice do item "Treinamento do usuario"
   */
  private int getTreinamentoSelecionado()
  {
    if (checkBoxTreinamento.isChecked())
    {  
      return 1;
    }
    return 0;      
  }

  /**
     * Inicializa variaveis da classe.
     */
  private void init()
  {
    idProjeto = ProjetoUtils.getIdProjeto();
    radioGroupExperiencia = (RadioGroup) rootView.findViewById(R.id.radioGroupExperiencia);
    radioGroupPericia = (RadioGroup) rootView.findViewById(R.id.radioGroupPericia);
    checkBoxTreinamento = (CheckBox) rootView.findViewById(R.id.checkBoxTreinamentoUsuario);
  }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                NavUtils.navigateUpTo(getActivity(), new Intent(getActivity(), TelaPrincipalActivity.class));
                return true;
        }
        return super.onOptionsItemSelected(item);
    }
}




Java Source Code List

com.vrs.reqdroid.activities.DrawerPrincipalActivity.java
com.vrs.reqdroid.activities.MainActivity.java
com.vrs.reqdroid.activities.TelaAbrirProjetoActivity.java
com.vrs.reqdroid.activities.TelaEditarEscopoActivity.java
com.vrs.reqdroid.activities.TelaEscopoActivity.java
com.vrs.reqdroid.activities.TelaHipoteseDetalhadaActivity.java
com.vrs.reqdroid.activities.TelaNovoProjetoActivity.java
com.vrs.reqdroid.activities.TelaPrincipalActivity.java
com.vrs.reqdroid.activities.TelaRequisitoAtrasadoDetalhadoActivity.java
com.vrs.reqdroid.activities.TelaRequisitoDetalhadoActivity.java
com.vrs.reqdroid.activities.TelaSobreActivity.java
com.vrs.reqdroid.dao.BDGerenciador.java
com.vrs.reqdroid.dao.IOperacoesBD.java
com.vrs.reqdroid.fragments.CaracteristicasUsuarioFragment.java
com.vrs.reqdroid.fragments.DependenciasFragment.java
com.vrs.reqdroid.fragments.HipotesesEDependenciasFragment.java
com.vrs.reqdroid.fragments.HipotesesFragment.java
com.vrs.reqdroid.fragments.ProjetosListFragment.java
com.vrs.reqdroid.fragments.RequisitosAtrasadosFragment.java
com.vrs.reqdroid.fragments.RequisitosFragment.java
com.vrs.reqdroid.models.Dependencia.java
com.vrs.reqdroid.models.Projeto.java
com.vrs.reqdroid.util.AlertsUtil.java
com.vrs.reqdroid.util.DependenciasUtils.java
com.vrs.reqdroid.util.DrawerPrincipalAdapter.java
com.vrs.reqdroid.util.HipotesesUtils.java
com.vrs.reqdroid.util.IRequisito.java
com.vrs.reqdroid.util.ListViewDependenciasAdapter.java
com.vrs.reqdroid.util.ListViewHipotesesAdapter.java
com.vrs.reqdroid.util.ListViewProjetosAdapter.java
com.vrs.reqdroid.util.ListViewRequisitosAdapter.java
com.vrs.reqdroid.util.ListViewRequisitosAtrasadosAdapter.java
com.vrs.reqdroid.util.ProjetoUtils.java
com.vrs.reqdroid.util.RequisitosAtrasadosUtils.java
com.vrs.reqdroid.util.RequisitosUtils.java