Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import android.Manifest;
- import android.app.AlertDialog;
- import android.content.DialogInterface;
- import android.os.Bundle;
- import android.support.annotation.NonNull;
- import android.support.annotation.Nullable;
- import android.support.v4.app.Fragment;
- import android.view.KeyEvent;
- import android.view.LayoutInflater;
- import android.view.View;
- import android.view.ViewGroup;
- import android.widget.Button;
- import com.google.android.gms.auth.api.Auth;
- import com.google.android.gms.auth.api.signin.GoogleSignInOptions;
- import com.google.android.gms.common.api.GoogleApiClient;
- import com.google.android.gms.common.api.ResultCallback;
- import com.google.android.gms.common.api.Status;
- import com.google.firebase.database.core.Context;
- import com.vego.vego.R;
- import java.util.Objects;
- //
- // Main_Fragment.java
- // Stackoverflow
- //
- // Created by Aiman Qaid on 16/10/2019.
- // Copyright All rights reserved.
- //
- public class Main_Fragment extends Fragment {
- private static Button btn_parques, btn_postos, btn_dados, btn_mapa, btn_noticias, btn_meteor, btn_sug;
- // private FusedLocationProviderClient fusedLocationClient;
- private Boolean mLocationPermissionGranted = false;
- private static final String FINE_LOCATION = Manifest.permission.ACCESS_FINE_LOCATION;
- private static final String COURSE_LOCATION = Manifest.permission.ACCESS_COARSE_LOCATION;
- private static final int LOCATION_PERMISSION_REQUEST_CODE = 1234;
- //private GoogleSignInClient mGoogleSignInClient;
- private Context mContext;
- private GoogleApiClient mGoogleApiClient;
- // private GoogleApiClient mGoogleApiClient;
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- /* setContentView(R.layout.main);
- if (savedInstanceState == null) {
- Fragment fg = new Right();
- getFragmentManager().beginTransaction().add(R.id.right_frag, fg)
- .commit();
- }*/
- GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
- .requestEmail()
- .build();
- mGoogleApiClient = new GoogleApiClient.Builder(Objects.requireNonNull(getContext()))
- .addApi(Auth.GOOGLE_SIGN_IN_API, gso)
- .build();
- mGoogleApiClient.connect();
- }
- @Override
- public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
- View view = inflater.inflate(R.layout.fragment_main_, container, false);
- // btn_parques = (Button) view.findViewById(R.id.btn_parques);
- // btn_postos = (Button) view.findViewById(R.id.btn_postos);
- // btn_dados = (Button) view.findViewById(R.id.btn_dados);
- // btn_mapa = (Button) view.findViewById(R.id.btn_mapa);
- // btn_noticias = (Button) view.findViewById(R.id.btn_noticias);
- // btn_meteor = (Button) view.findViewById(R.id.btn_meteor);
- // btn_sug = (Button) view.findViewById(R.id.btn_sug);
- // mContext = getActivity();
- // getLocationPermission();
- enableMyLocation();
- /**
- * Ao carregar no botão dos Parques, faz a transição para o Parque_fragment
- */
- btn_parques.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new Parque_Fragment());
- // tt.commit();
- // tt.addToBackStack(null);
- }
- });
- /**
- * Ao carregar no botão dos Postos, faz a transição para o PostosEletricos_fragment
- */
- btn_postos.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new PostosEletricos_Fragment());
- // tt.commit();
- // tt.addToBackStack(null);
- }
- });
- /**
- * Ao carregar no botão do Conjunto de Dados, faz a transição para os Dados_Fragment
- */
- btn_dados.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new Dados_Fragment());
- // tt.commit();
- // tt.addToBackStack(null);
- }
- });
- /**
- * Ao carregar no botão do Mapa, faz a transição para o Map_fragment
- */
- btn_mapa.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new Map_Fragment());
- // tt.commit();
- // tt.addToBackStack(null);
- }
- });
- /**
- * Ao carregar no botão das noticias, faz a transição para o News_fragment
- */
- btn_noticias.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new News_Fragment());
- // tt.commit();
- // tt.addToBackStack(null);
- }
- });
- /**
- * Ao carregar no botão da Meteorologia, faz a transição para Weather_fragment
- */
- btn_meteor.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new Weather_Fragment());
- // tt.commit();
- // tt.addToBackStack(null);
- }
- });
- /**
- * Ao carregar no botão da Sugestão, faz a transição para Sugestoes_Fragment
- */
- btn_sug.setOnClickListener(new View.OnClickListener() {
- public void onClick(View v) {
- // FragmentTransaction tt = getFragmentManager().beginTransaction();
- // tt.replace(R.id.fragment_container, new Sugestoes_Fragment());
- // tt.commit();
- // tt.addToBackStack(null); //volta para a "pagina anterior" do fragmento
- }
- });
- return view;
- }
- /**
- * Método que calcula a distancia entre a localizacao atual do utilizador
- * e a localizacao de cada parque
- * Ordena os parques de estacionamento ascendentemente por parque mais proximo
- */
- private void enableMyLocation(){
- // fusedLocationClient = LocationServices.getFusedLocationProviderClient(mContext);
- //
- // try{
- // if(mLocationPermissionGranted) {
- //
- // Task location = fusedLocationClient.getLastLocation();
- // location.addOnCompleteListener(new OnCompleteListener() {
- // @Override
- // public void onComplete(@NonNull Task task) {
- // if (task.isSuccessful()) {
- // Location currentLocation = (Location) task.getResult();
- // }
- // }
- // });
- // }
- // } catch (Exception e) {
- // e.printStackTrace();
- // }
- // }
- //
- // /**
- // * Método que verifica as permissoes necessarias para aceder à localizacao atual
- // */
- // private void getLocationPermission(){
- // String[] permissions = {Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION};
- //
- // if(ContextCompat.checkSelfPermission(mContext.getApplicationContext(), FINE_LOCATION) == PackageManager.PERMISSION_GRANTED){
- // if(ContextCompat.checkSelfPermission(mContext.getApplicationContext(), COURSE_LOCATION) == PackageManager.PERMISSION_GRANTED){
- // mLocationPermissionGranted = true;
- // } else {
- // ActivityCompat.requestPermissions((Activity) getActivity(), permissions, LOCATION_PERMISSION_REQUEST_CODE);
- // }
- // } else {
- // ActivityCompat.requestPermissions((Activity) getActivity(), permissions, LOCATION_PERMISSION_REQUEST_CODE);
- // }
- }
- @Override
- public void onResume() {
- super.onResume();
- getView().setFocusableInTouchMode(true);
- getView().requestFocus();
- getView().setOnKeyListener(new View.OnKeyListener() {
- @Override
- public boolean onKey(View v, int keyCode, KeyEvent event) {
- if (event.getAction() == KeyEvent.ACTION_UP && keyCode == KeyEvent.KEYCODE_BACK) {
- final AlertDialog.Builder builder = new AlertDialog.Builder(getContext())//.this
- .setMessage("Tem a certeza que pretende sair?")
- .setCancelable(true)
- .setNegativeButton("Não", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- dialog.cancel();
- }
- });
- builder.setPositiveButton("Sair", new DialogInterface.OnClickListener() {
- @Override
- public void onClick(DialogInterface dialog, int which) {
- Auth.GoogleSignInApi.signOut(mGoogleApiClient).setResultCallback(
- new ResultCallback<Status>() {
- @Override
- public void onResult(Status status) {
- // ... your code goes here
- }
- });
- /* Intent intent=new Intent(getContext(), Login.class); //ProfileActivity.this
- intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
- startActivity(intent);
- getActivity().finish();*/
- }
- });
- AlertDialog alertDialog = builder.create();
- alertDialog.show();
- return true;
- }
- return false;
- }
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement