Join Today
Prikazujem rezultate 1 do 1 od 1

Threaded View

  1. #1
    Super-forumaš Postignuća:
    Veteran31 days registered10000 Experience PointsTagger Second Class

    Datum registracije
    Apr 2006
    Mobitel
    6P | Pixel3
    Operater
    Tele2
    Godina
    33
    Postova
    2.307
    Bodovi
    23.828
    Nivo
    37
    Bodovi: 23.828, Nivo: 37
    Bodovi: 23.828, Nivo: 37
    Ukupna aktivnost: 0%
    Ukupna aktivnost: 0%
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    CafeMobil Android aplikacija - 2. dio - izrada liste (ListView)

    Pozdrav, napokon sam stigao napisati novi dio tutoriala. Žao mi je što ne stignem baš često raditi ovo, ali nije ni nešto baš popularno nažalost.

    U ovom djelu se radi lista (ListView) koja sadrži stringove. Ti stringovi će kasnije postati naslovi tema sa Cafe Mobil foruma.

    Prvo što treba napraviti je ukloniti stare elemente iz layout-a koje smo koristili samo za testiranje. Dakle iz activity_main.xml treba izbrisati <TextView> i <Button> i dodati <ListView> kojeg ćemo popuniti. Također kad izbrišemo te elemente, treba iz java koda izbrisati reference na njih, inače bi dobili NullPointerException.

    Sada naš layout activity_main.xml izgleda ovako:
    Code:
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
        android:layout_height="match_parent"
        tools:context=".MainActivity">
    
        <ListView
            android:id="@+id/lista_naslova"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />
    </RelativeLayout>
    Iz java koda je u onCreate metodi izbačen Button i njegov listener:

    Code:
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
        }
    Sada je potrebno prilagoditi onCreate metodu da radi sa našom listom, probat ću to objasniti sa komentarima unutar koda.

    Code:
    @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            // dohvatiti XML element sa layouta
            ListView listaNaslova = (ListView) findViewById(R.id.lista_naslova);
    
            // popuniti polje stringova sa naslovima (trenutno samo za testiranje, kasnije idu pravi naslovi)
            String[] naslovi = {
                    "IPTV na androidima",
                    "LG G3 D855 - Tutoriali, ručna nadogradnja",
                    "Garmin City Navigator Europe NT 2015.40", "Teclast T98 4G 32gb.",
                    "Samsung Galaxy S6: Najava,info,slike",
                    "igo primo problem na s4 i9505",
                    "Što Biste Promjenili Na Forumu?!?",
                    "Medion MDPNA150"
            };
    
            // izrađivanje adaptera za ListView koji popunjava listu sa poljem stringova
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(
                    this,
                    android.R.layout.simple_list_item_1, // ovo je default TextView od androida, moguće je napraviti svoj
                    naslovi
            );
    
            // dodjeljivanje adaptera listi
            listaNaslova.setAdapter(adapter);
        }
    Ako ste radili barem malo programiranja, tu bi više manje sve trebalo biti jasno osim adaptera. Adapteri u Androidu služe za popunjavanje elemenata koji se "ponavljaju", odnosno liste. Neki od elemenata što trebaju adaptere su ListView, GridView, RecyclerView, itd itd..
    U ovom primjeru je korišten najjednostavniji adapter jer se lista sastoji od samo jednog elementa (jedan text), a za kompliciranije liste je potrebno napraviti svoju klasu koja popunjava svaki element posebno.

    Rezultat koji dobijemo na kraju:


    Podsjećam, na GitHub-u se mogu vidjeti sve promjene unutar projekta.
    Zadnji uredio ravilov : 15-03-2015 u 15:14

  2. 'Hvala' kaže:



 

Slične teme

  1. Odgovora: 0
    Posljednji post: 22-02-2015, 15:29
  2. CafeMobil Android aplikacija - 1. dio - postavljanje projekta
    By .andro. in forum Android programiranje
    Odgovora: 2
    Posljednji post: 19-02-2015, 10:12
  3. .::Adobe Flash Builder::. 5. dio [Izrada izbornika]
    By merlin10 in forum Android programiranje
    Odgovora: 0
    Posljednji post: 26-06-2013, 21:15
  4. .::Adobe Flash Builder::. 4. dio [Izrada APK datoteke]
    By merlin10 in forum Android programiranje
    Odgovora: 0
    Posljednji post: 22-05-2013, 18:37

Bookmarks

Pravila postanja

  • Ne možeš stvarati nove teme
  • Ne možeš odgovarati na postove
  • Ne možeš slati privitke
  • Ne možeš mijenjati svoje postove