Autore Topic: usare o non usare il fragment  (Letto 218 volte)

Offline Fabio gervasio

  • Nuovo arrivato
  • *
  • Post: 1
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    asus zenfon2
  • Sistema operativo:
    windows 10
usare o non usare il fragment
« il: 06 Agosto 2016, 17:30:57 CEST »
0
Salve a tutti!
Ho un grosso dilemma.
Vorrei sviluppare un app che mi permetta di loggarmi in un sito, che mi permetta solo si visualizzare i dati di registrazione senza modificare, e di inviare un post al sito.
Vorrei sapere in linea teorica come si potrebbe sviluppare. Ho già fatto delle prove e sia il login e sia il ritorno di dati funziona ma se implemento i fragment non funziona.
Codice (Java): [Seleziona]
package it.innet.innet;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.TextView;

public class UserAreaActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_user_area);

        Intent intent = getIntent();
        String name = intent.getStringExtra("name");
        String username = intent.getStringExtra("username");
        String city = intent.getStringExtra("city");

        TextView tvWelcomeMsg = (TextView) findViewById(R.id.tvWelcomeMsg);

        TextView etUsername = (TextView) findViewById(R.id.etUsername);
        TextView etCity = (TextView) findViewById(R.id.etCity);
        TextView vname = (TextView) findViewById(R.id.vname);


        String message = "Benvenuto nella tua area " + name;

        tvWelcomeMsg.setText(message);
        etUsername.setText(username);
        etCity.setText(city);
        vname.setText(name);


    }
}

questa è l' activity funzionante ma se la copio nel fragment mi da errore.
grazie a chiunque mi può dare un illuminazione.

Offline newbie2016

  • Utente junior
  • **
  • Post: 79
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Cubot X9
  • Sistema operativo:
    Windows 7
Re:usare o non usare il fragment
« Risposta #1 il: 06 Agosto 2016, 18:30:05 CEST »
0
Stesso problema anch'io.
Nell'Activity il collegamento al Database funziona, ho creato una TabActivity con 3 schede e non mi visualizza nulla.

Aspettiamo risposta dai Guru.  ;-)

Offline joefermati

  • Nuovo arrivato
  • *
  • Post: 10
  • Respect: +1
    • Mostra profilo
  • Sistema operativo:
    win 10
Re:usare o non usare il fragment
« Risposta #2 il: 28 Settembre 2016, 14:41:56 CEST »
0
Posta come hai strutturato il fragment.
Inoltre i fragment non si lanciano via intent, ma con la convenzione newIstance + getSupportFragmentManager.
Questo perché i fragments vivono nelle activity, in un frameLayout ad esempio. Non sono cose a sè stanti.

Ti faccio un esempio da una mia app:

MainActivity.java
Codice (Java): [Seleziona]
private void launchListFragment(int scope){

        Fragment newF = ListFragment.newInstance(scope);

        getSupportFragmentManager().beginTransaction()
                .replace(R.id.fragment_container, newF)
                .commit();
    }
Qui R.id.fragment_container è un frameLayout nel file xml della mia activity.
Invece scope è una variabile che passo che contiene dei dati da visualizzare nel fragment. Tu invece di un int puoi passare una List<> se devi mandare più variabili insieme.

ListFragment.java
Codice (Java): [Seleziona]
public static ListFragment newInstance(int extra) {
        Bundle args = new Bundle();
        args.putInt("data_extra", extra);
        ListFragment fragment = new ListFragment();
        fragment.setArguments(args);
        return fragment;
    }

    public ListFragment() {
    }
Nel fragment stesso detto il codice per gestirne la sua esecuzione. Come vedi inserisco i miei dati extra in un Bundle e lo allego al fragment, per poi eseguirlo.