Inne działy

 

Ekran powitalny dla aplikacji Android - Przykład

 

Dodanie ekranu powitalnego dla aplikacji jest konieczne, jeśli aplikacja wymaga więcej czasu do załadowania. Jest ona podobna do gier PC, gdzie można zobaczyć markę firmy i tytuł przed faktycznym rozpoczęciem gry.

Tu, w tym przykładzie stworzymy aktywność, aby wyświetlić ekran powitalny z paskiem postępu przez dwie sekundy. Po dwóch sekundach użytkownik zostanie skierowany na stronę główną.

Przykład wykonany w AndroidStudio

Więc zacznijmy:

Utwórz nowy projekt File -> New Project  pod nową nazwę projektu jako EkranStartowy (EkranStartowyAplikacji.java). Użyj skrótu klawiaturowego Ctrl+Shift+O aby automatycznie zaimportować wszystkie biblioteki.

EkranStartowyAplikacji.java

 

package pl.uazz.ekranstartowy.app;

import android.content.Intent;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;


public class EkranStartowyAplikacji extends ActionBarActivity {

    //deklarowanie zmiennych
    private long ms = 0;
    private long czasPowitania = 2500;
    private boolean aktywowac = true;
    private boolean pauza = false;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.ekran_startowy);

        //utworzenie wyjątku
        Thread mojwatek = new Thread(){
            public void run(){
                try {
                    while (aktywowac && ms < czasPowitania){
                        if(!pauza)
                            ms = ms + 100;
                        sleep(100);
                    }
                }catch (Exception e){
                }finally {
                    Intent intent = new Intent(EkranStartowyAplikacji.this,MainActivity.class);
                    startActivity(intent);
                }
            }

        };
        mojwatek.start();
    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.ekran_startowy_aplikacji, 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();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

Teraz należy utworzyć interfejs użytkownika dla EkranStartowyAplikacji.java

Utwórz nowy plik xml w folderze layout jako ekran_startowy.xml.

ekran_startowy.xml

 

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Witamy w ekranie startowym aplikacji na Androida"
        android:id="@+id/textView"
        android:layout_gravity="center_horizontal" />

    <ProgressBar
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/progressBar"
        android:layout_gravity="center_horizontal" />
</LinearLayout>

Teraz, gdy ekran powitalny jest gotowy należy stworzyć główną aktywność ( MainActivity.java ) i układ do głównej działalności ( activity_main.xml )

MainActivity.java

 

package pl.uazz.ekranstartowy.app;

import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;


public class MainActivity extends ActionBarActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }


    @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();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}

activity_main.xml

 

<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"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:paddingBottom="@dimen/activity_vertical_margin"
    tools:context="pl.uazz.ekranstartowy.app.MainActivity">

    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="181dp"
        android:text="Witamy w oknie głównym aplikacji"/>

</RelativeLayout>

Nadchodzi najważniejsza część, obejmuje ona wszystkie działania w pliku manifestu. Oprócz tego umieścimy atrybut Android:noHistory = "true" w tagu android:name="pl.uazz.ekranstartowy.app.EkranStartowyAplikacji" tak, że aktywność nie pojawi się na stosie aktywności, znaczenie jeśli użytkownik naciśnie klawisz z główną aktywnością to nie powinno kierować użytkowników do ekranu powitalnego.

 

AndroidManifest.xml

 

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="pl.uazz.ekranstartowy.app" >

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="pl.uazz.ekranstartowy.app.EkranStartowyAplikacji"
            android:label="@string/app_name"
            android:noHistory="true">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <activity
            android:name="pl.uazz.ekranstartowy.app.MainActivity"
            android:label="@string/title_activity_ekran_startowy_aplikacji" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

 

Zobacz nasze wszystkie kursy

WWW


HTML
HTML - Znaczniki
CSS - Tutorial
CSS - Selektory
PHP
JavaScript

XML

XSLT

Bazy danych


SQL
SQLite
MySQL
PostgreSQL

 

 

Programowanie


C
C++
C#
Java
VisualBasic
Python

Linux


Podstawy Linuxa
Bash
Linuks artykuły

Windows


Excel funkcje
Windows wskazówki
Outlook

Pozotałe działy


Programy
Rozrywka

 

 

 

This email address is being protected from spambots. You need JavaScript enabled to view it.