Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ru.travellingtogether.travellingtogether;
- import android.app.FragmentTransaction;
- import android.os.Bundle;
- import android.view.View;
- import android.support.design.widget.NavigationView;
- import android.support.v4.view.GravityCompat;
- import android.support.v4.widget.DrawerLayout;
- import android.support.v7.app.ActionBarDrawerToggle;
- import android.support.v7.app.AppCompatActivity;
- import android.support.v7.widget.Toolbar;
- import android.view.Menu;
- import android.view.MenuItem;
- import android.widget.EditText;
- import android.widget.TextView;
- import org.json.JSONArray;
- import org.json.JSONException;
- import org.json.JSONObject;
- import ru.travellingtogether.travellingtogether.fragments.FragmentDriver;
- import ru.travellingtogether.travellingtogether.fragments.FragmentInfo;
- import ru.travellingtogether.travellingtogether.fragments.FragmentLogin;
- import ru.travellingtogether.travellingtogether.fragments.FragmentPassenger;
- import ru.travellingtogether.travellingtogether.fragments.FragmentRegister;
- import ru.travellingtogether.travellingtogether.fragments.FragmentUser;
- public class MainActivity extends AppCompatActivity
- implements NavigationView.OnNavigationItemSelectedListener {
- // declaration of variables for fragments
- FragmentDriver fdriver;
- FragmentPassenger fpassenger;
- FragmentInfo finfo;
- FragmentLogin flogin;
- FragmentRegister fregister;
- FragmentUser fuser;
- // declaration of variables for fragment_login and fragment_register ets
- EditText etLogUsername, etLogPassword;
- EditText etRegUsername, etRegPassword, etRegName, etRegSurname;
- // declaration of variables for fragment_user and header tvs
- TextView tvUserUsername, tvUserName, tvUserSurname;
- TextView navHeaderName;
- // declaration of variables for showData()
- private JSONArray userinfo = null;
- private static final String JSON_ARRAY ="result";
- private static final String JSON_USERNAME = "username";
- private static final String JSON_NAME= "name";
- private static final String JSON_SURNAME = "surname";
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
- setSupportActionBar(toolbar);
- DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
- ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
- this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
- drawer.setDrawerListener(toggle);
- toggle.syncState();
- NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
- navigationView.setNavigationItemSelectedListener(this);
- // attaching fragments to variables
- fdriver = new FragmentDriver();
- fpassenger = new FragmentPassenger();
- finfo = new FragmentInfo();
- flogin = new FragmentLogin();
- fregister = new FragmentRegister();
- fuser = new FragmentUser();
- // attaching tv to variable
- navHeaderName = (TextView) findViewById(R.id.navHeaderName);
- // call for FragmentLogin
- FragmentTransaction ftLogin = getFragmentManager().beginTransaction();
- ftLogin.replace(R.id.container, flogin);
- ftLogin.commit();
- }
- @Override
- public void onBackPressed() {
- DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
- if (drawer.isDrawerOpen(GravityCompat.START)) {
- drawer.closeDrawer(GravityCompat.START);
- } else {
- super.onBackPressed();
- }
- }
- @Override
- public boolean onCreateOptionsMenu(Menu menu) {
- // Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.main, menu);
- return true;
- }
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- // Handle action bar item clicks here. The action bar will
- // automatically handle clicks on the Home/Up button, so long
- // as you specify a parent activity in AndroidManifest.xml.
- int id = item.getItemId();
- //noinspection SimplifiableIfStatement
- if (id == R.id.action_settings) {
- return true;
- }
- return super.onOptionsItemSelected(item);
- }
- @SuppressWarnings("StatementWithEmptyBody")
- @Override
- public boolean onNavigationItemSelected(MenuItem item) {
- // Handle navigation view item clicks here.
- int id = item.getItemId();
- FragmentTransaction ftMenu = getFragmentManager().beginTransaction();
- if (id == R.id.nav_driver) {
- ftMenu.replace(R.id.container, fdriver);
- } else if (id == R.id.nav_passenger) {
- ftMenu.replace(R.id.container, fpassenger);
- } else if (id == R.id.nav_info) {
- ftMenu.replace(R.id.container, finfo);
- } ftMenu.commit();
- DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
- drawer.closeDrawer(GravityCompat.START);
- return true;
- }
- // method for "register" button at FragmentLogin
- public void onLogRegister(View view) {
- FragmentTransaction ftRegister = getFragmentManager().beginTransaction();
- ftRegister.replace(R.id.container, fregister);
- ftRegister.commit();
- }
- // method for "login" button at FragmentLogin
- public void onLogin(View view) {
- etLogUsername = (EditText) findViewById(R.id.etLogUsername);
- etLogPassword = (EditText) findViewById(R.id.etLogPassword);
- String username = etLogUsername.getText().toString();
- String password = etLogPassword.getText().toString();
- String type = "login";
- BackgroundWorker backgroundWorker = new BackgroundWorker(this);
- backgroundWorker.execute(type, username, password);
- // if (BackgroundWorker.result.equals("login success")) {
- GetJSON getJSON = new GetJSON();
- getJSON.execute(username, password);
- FragmentTransaction ftUser = getFragmentManager().beginTransaction();
- ftUser.replace(R.id.container, fuser);
- ftUser.commit();
- // }
- }
- // method for "register" button at FragmentRegister
- public void onRegRegister(View view) {
- etRegUsername = (EditText) findViewById(R.id.etRegUsername);
- etRegPassword = (EditText) findViewById(R.id.etRegPassword);
- etRegName = (EditText) findViewById(R.id.etRegName);
- etRegSurname = (EditText) findViewById(R.id.etRegSurname);
- String username = etRegUsername.getText().toString();
- String password = etRegPassword.getText().toString();
- String name = etRegName.getText().toString();
- String surname = etRegSurname.getText().toString();
- String type = "register";
- BackgroundWorker backgroundWorker = new BackgroundWorker(this);
- backgroundWorker.execute(type, username, password, name, surname);
- GetJSON getJSON = new GetJSON();
- getJSON.execute(username, password);
- FragmentTransaction ftUser = getFragmentManager().beginTransaction();
- ftUser.replace(R.id.container, fuser);
- ftUser.commit();
- }
- // method for "show data" button at FragmentUser
- public void onShowDataTest(View view) {
- tvUserUsername = (TextView) findViewById(R.id.tvUserUsername);
- tvUserName = (TextView) findViewById(R.id.tvUserName);
- tvUserSurname = (TextView) findViewById(R.id.tvUserSurname);
- extractJSON();
- showData();
- }
- // extracting json string to array
- private void extractJSON(){
- try {
- JSONObject jsonObject = new JSONObject(GetJSON.jsonResult);
- userinfo = jsonObject.getJSONArray(JSON_ARRAY);
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- // getting data and inserting it to views
- private void showData(){
- try {
- JSONObject jsonObject = userinfo.getJSONObject(0);
- tvUserUsername.setText(jsonObject.getString(JSON_USERNAME));
- tvUserName.setText(jsonObject.getString(JSON_NAME));
- tvUserSurname.setText(jsonObject.getString(JSON_SURNAME));
- // String name = jsonObject.getString(JSON_NAME)+" "+jsonObject.getString(JSON_SURNAME);
- // navHeaderName.setText(name);
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement