view

Mattepuffo's logo
Riempire una ListView Android da XML

Riempire una ListView Android da XML

Abbiamo visto come riempire una ListView in Android con dati in formato JSON.

Oggi vediamo come fare la stessa cosa usando l'altro formato principe per strutturare i dati: XML.

Qua useremo una Activity invece di un Fragment, ma cambia relativamente poco.

Partiamo dalla Activity:

public class MainActivity extends ListActivity {

    private ArrayList list;
    private ArrayAdapter adapter;
    private ReadXml rx;
    private ListView lv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        lv = getListView();
        rx = new ReadXml();
        setLista();
    }

    private void setLista() {
        try {
            list = rx.readClienti(getApplicationContext(), Environment.getExternalStorageDirectory() .getAbsolutePath() + File.separator + "dati.xml" ;
        } catch (IOException e) {
        } catch (SAXException e) {
        } catch (ParserConfigurationException e) {
        }
        adapter = new ArrayAdapter(getApplicationContext(),
                android.R.layout.simple_list_item_1, list);
        lv.setAdapter(adapter);

    }

}

Abbiamo un metodo setLista che si occupa di riempire la ListView.

Mattepuffo's logo
UIButton con angoli arrotondati

UIButton con angoli arrotondati

Di default XCODE ci mette a disposizione solo UIButton con angoli a punta (penso questo dipenda da iOS 7).

Non è detto che noi li vogliamo così, e magari li vogliamo con angoli tondi!

Bhe presto detto.

Una volta che abbiamo aggiunto il bottone alla StoryBoard, e aggiunto il riferimento al controller, non dobbiamo far altro che usare un oggetto CALayer.

Mattepuffo's logo
Visualizzare PDF in una pagina web

Visualizzare PDF in una pagina web

Capita spesso di avere guide, libri o portafogli prodotti in PDF da far sfogliare all'utente dentro la nostra pagina web.

Un modo molto semplice per farlo è usando Viewer.js, che da quanto ho capito è usato da Firefox stesso.

Prima di tutto scaricatelo, e caricate la directory Viewer.js nel server remoto.

Una volta fatto basterà usare un iframe dando il percorso del PDF da visulizzare.

Mattepuffo's logo
Evitare la rotazione di una WebView in Android

Evitare la rotazione di una WebView in Android

Una WebView rappresenta una View nella quale è possibile caricare pagine web (in locale o in remoto).

Il problema del secondo caso è che quanto ruotiamo il dispositivo la app va in crash.

La motivazione dovrebbe essere data dal fatto che ogni volta che ruotiamo lo schermo, la View si ricarica e fa una richiesta.

Una possibile soluzione è quella di bloccare la rotazione, ma in alcuni casi non è una buona soluzione.

Mattepuffo's logo
Download file in Objective-C

Download file in Objective-C

Oggi vediamo come scaricare file dalla rete nella nostre app per iPad e iPhone usando gli strumenti standard offerti da iOS.

Partiamo del file di header del nostro controller:

@interface EntrateViewController : UIViewController {
    NSURLConnection *connection;
    NSURLRequest *request;
    NSURL *url;
    NSMutableData *dataResponse;
    NSArray *paths;
    NSString *documentsDirectory;
    NSString *lastEntrateFile;
}

@property (weak, nonatomic) IBOutlet UIBarButtonItem *btnRefresh;

- (IBAction)download:(id)sender;

@end

Abbiamo un UIBarButtonItem, al quale abbiamo collegato una IBAction.

Mattepuffo's logo
Usare i ProgressDialog in Android

Usare i ProgressDialog in Android

I ProgressDialog sono molto usati anche in ambito mobile, in quanto consentono di "bloccare" lo schermo avvertendo l'utente quando una determinata operazione finisce.

In generale la sequenza per usare questo oggetto è questa:

ProgressDialog pd = new ProgressDialog(Activity.this);
pd.setMessage("loading...");
pd.show();
// DO STUFF
pd.dismiss();

In sostanza, creiamo il dialog, lo avviamo, eseguiamo le operazioni e lo chiudiamo.