MojAndroid

V minulej časti sme si nastavili vývojové prostredie ecllipse, takže teraz si môžeme pripraviť projekt. Vytvoríme si základné súbory a nakonfigurujeme si celú aplikáciu. Aplikácia pozostáva z hlavnej časti, ktorá zobrazuje obrázok a jednoduchého informačného okna O aplikácii.

 

V eclipse zvolíme File -> New -> Other a tam vyberieme Android -> Android Project. Klikneme na next. Zobrazí sa nám okno, v ktorom vypíšeme názov aplikácie (Project name) a názov balíka (package name; napr. uri na vašu stránku odzadu – sk.mojandroid). A klikneme na finish.

 

Teraz si otvoríme súbor AndroidManifest.xml, kde sa nachádza celá konfigurácia našej aplikácie. Vo vývojovom prostredí eclipse máme dve možnosti ako to spraviť. Prvá je prejdením jednotlivých záložiek a nastavením jednotlivých nastavení. Druhá možnosť je otvoriť si kliknutím na poslednú záložku textovú verziu konfiguračného súboru a zapísať konfiguráciu ručne. Prejdeme si teda všetky záložky a povieme si kde čo treba nastaviť. Vychádzame z predpokladu, že chceme zobrazovať komiks na celú obrazovku bez titulku.

V záložke Manifest vyberieme v ‘Install location’ auto; to znamená, že necháme na užívateľa, kde si chce aplikáciu nainštalovať, či do telefónu alebo na SD kartu. Zároveň sa presvedčíme, že časť ‘Manifest Extras’ obsahuje ‘Uses Sdk’ a po vybratí sa nám na pravej strane zobrazia atribúty a konkrétne  ‘Min SDK version’ je nastavená na číslo 8 (tj. Android verzie 2.2 od ktorej je povolená inštalácia aplikácií na SD kartu).
Ďalej do ‘Manifest Extras’ pridáme ‘Support Screens’ a všetky atribúty nastavíme na true. Tým zabezpečíme, že aplikácia nám pobeží na zariadeniach s rôznymi rozlíšeniami.

V záložke Application klikneme v ľavej časti ‘Application Nodes’ na našu aktivitu a vpravo nastavíme atribúty ‘Theme’ na @android:style/Theme.NoTitleBar (zakázanie zobrazenia titulku nad oknom) a ‘Screen orientation’ na landscape (tj. orientácia na šírku, keďže väčšina komiksov je orientovaná na šírku).

V záložke Permissions klikneme na Add a pridáme voľbu ‘Uses Permission’. Atribút nastavíme na android.permission.INTERNET (keďže aplikácia bude obrázky sťahovať z internetu).

Toto sú základné nastavenia, samozrejme ak niekto má chuť, môže si nastaviť aj iné veci (po preštudovaní dokumentácie, čo ktoré nastavenie znamená).

 

V ďaľšom kroku sa zameriame na nastavenie zdrojov, tj. ikonu aplikácie, textové reťazce a rozmiestnenie prvkov na obrazovke. Ikony aplikácie potrebujeme v troch veľkostiach: 36×36, 48×48 a 72×72 (tu navrhujem vytvoriť ikonu v najvyššom rozlíšení a potom ju len zmenšiť na požadované veľkosti).

 

Textové reťazce môžu byť ľubovoľné, ktoré ďalej použijeme v zdrojovom kóde. Pomocou nich môžeme potom aj internacionalizovať našu aplikáciu, tj. podporovať rôzne jazykové mutácie. Vzhľadom na jednoduchosť našej prvej aplikácie sa nebudeme týmto zaoberať a nastavíme si len popis aplikácie, informácie o aplikácii a názov pomocného okna. Pridáme teda 3x ‘String’ a nastavíme pre každý jeho atribúty meno a hodnotu. Toto si nastavíme v súbore res/values/strings.xml

Name: app_descrip Value: Shooty image of the day browser
Name: app_credits Value: All images are from\n http://www.nejakykomiks.sk\n\nAuthor: ja sam
Name: app_about   Value: About

 

Rozmiestnenie prvkov nastavíme nasledovne. Otvoríme si súbor v res/layout/main.xml. Otvorí sa nám grafický pomocník. V hornom riadku si prepneme rozloženie z Portrait na Landscape a presvedčíme sa, že téma je nastavená na Theme.NoTitleBar. Tu si môžeme navrhnúť rozloženie ako potrebujeme. My sa prepneme do textovej verzie, ktorá by mala vyzerať nasledovne:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_height="fill_parent"
    android:layout_width="fill_parent"
    android:orientation="vertical"
    android:gravity="fill_horizontal">
    <ImageView android:id="@+id/ImageView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">
    </ImageView>
</RelativeLayout>

 

Pre nepodstatnosť a ukážku funkcionality si vytvoríme ešte dva súbory. V res/layout vytvoríme súbor about.xml, ktorý bude mať nasledovný obsah:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="20dip">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="16sp"
        android:text="@string/app_descrip"
        android:textColor="?android:attr/textColorPrimaryInverse" />

    <TextView
        android:id="@+id/about_credits"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:paddingTop="20dip"
        android:textSize="16sp"
        android:text="@string/app_credits"
        android:autoLink="web"
        android:textColor="?android:attr/textColorPrimaryInverse" />
</LinearLayout>

 

A v adresári res si vytvoríme nový podadresár menu, v ktorom vytvoríme súbor about.xml s nasledovným obsahom:

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item
        android:id="@+id/app_about"
        android:title="@string/app_about"
        android:icon="@android:drawable/ic_menu_help" />
</menu>

 

V ďaľšom dieli si naprogramujeme funkcionalitu aplikácie.

16.10.2011

Pravidlá diskusie

Portál MojAndroid.sk si vyhradzuje právo zmazať neslušné, rasistické a vulgárne príspevky, ako aj osobné útoky na redakciu, či diskutérov v komentároch pod článkom bez ďalšieho upozornenia. V prípade uverejňovania odkazov na externé stránky, je komentár automaticky preposlaný do redakcie na schválenie.

+