Documente Academic
Documente Profesional
Documente Cultură
Lab1paiip Vip
Lab1paiip Vip
RAPORT
Lucrarea Nr.1
Tema: UI Kit
Chiinu 2016
Tema: UI Kit Lucrarea Nr.1
Obiective : Dezvoltarea unei aplicaii pe una din platformele stabilite la Laboratorul Nr.0 , utiliznd
mediul de dezvoltare corespunztor acesteia.
Scopul:
De prezentat o aplicaie ce ruleaz pe un dispozitiv sau emulator, ce va conine pe interfaa sa,
urmtoarele elemente:
Condiii:
De utilizat componentele UI pentru a realiza urmtoarele condiii:
Am creat un New Project cu denumirea temei UI Kit, apoi am ales platforma de android API 21
pentru a se combina cu telefonul meu. Am adugat o activitate pentru telefon i am ales Emty
Activity. Astfel am creat proiectul pentru laboratorul 1.
1.Push Notification
Deschid mapa cu proiectul pe care l-am creat i caut mapa Res i apoi caut mapa Layout, unde
dm de fiierul Activity_main.xml. Alegem seciunea design i adugm un button cu identitatea
notifi. Am creat n mainActivity.java identitatea butonului notifi. Am preluat funcia de notificare
de pe sit-ul developer.android.com referitor la crearea unei notificri simple.
A doua parte a condiiei este de crearea unui buton n care s fie executat peste un interval de 10
secunde. Pentru a crea executarea butonului notifi
notifi.setOnClickListener(new View.OnClickListener()
Funcia s-a creat singur apsnd Alt+Enter, n aceasta am plasat un timer Handler pentru a putea
porni funcia dup 10 secunde.
n figura 1 este reprezentat apariia notificrii, dup executarea butonului de notificare. Este redat
un Titlul, cu o mic descriere i icon-ul notificrii.
2. O cutare n Google.
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/eCauta"
android:layout_toStartOf="@+id/cauta" />
<Button
android:text="Cauta"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/cauta"
android:layout_alignBottom="@+id/eCauta"
android:layout_alignParentEnd="true" />
n fiierul principal Java am denumit resursele butonului i editText. Apoi am creat un butonul de
lansarea cu cuvntului cheie + link de cutare pe google ntr-un browser la alegere.
bCautare.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
String url = "https://www.google.com/search?q="+tCautare.getText().toString();
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
}
});
S-a utilizat intent-ul pentru a lansa o aplicaie extern pentru a vizualiza linkul pe care eu l-am plasat.
Activitatea se pornete de ndat la apsarea butonului de cutare.
Mai jos v prezint n figura 2.1 bara de cutare din aplicaie, iar n figura 2.2 este deschiderea unui
browser cu rezultatul cutrii n Google.
Am nceput evident cu crearea interfeei n Layout, acolo am creat un buton simplu cu denumirea
camerei iar apoi am creat doua radio butoane care au funcia de a se porni camera din spate i
alta din fa. Selectm radio butonul iar apoi lansm camera de la buton. Acum revenim la scrierea
funciei pentru camer aici am preluat codul camerei de pe sit-ul oficial. Am creat butonul bCamera
i am plasat dup execuie s plasez radio butoanele dup selecie.
Mai nti de toate am creat in fiierul activity_main.xml dou radio butoane i cu buton de
selectare din radiobutoanele. Dup ce am denumit funciile, trebuie s fie declarate n fiierul
MainActivity, radio butoanele i butonul de lansare a camerei.
Butonul de lansare a camerei :
Deci n figura 3 sunt prezentate fixarea butoanelor n fereastra principal. Care afieaz dou radio
button cu un buton de accesare. Apoi se creeaz intenia de a deschide aplicaia Camera.
Am creat cte o intenie din fa i din spatele camerei care ca idee s acioneze camera i s
creeze captur. i transmitem rezultatul ctre o alt funcie ActivityResult();
rbutton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Intent intent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(intent, CAMERA_PIC_REQUEST);
}
});
fbutton.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Pentru ca utilizatorul s aleag funcia camerei am plasat dou radio butoane de alegere care
poate selecta Camera din Spate i din Fa. n funcia dat am declarat i RadioGrup responsabil
de selectare a fiecrei opiuni.
Din funcia de mai sus pe nume addListenerOnButton(); este adugat n funcia principal prin
care se lanseaz aplicaia dat.
n proiectul dat din mapa Manifest n fiierul Androidmanifest.xml i am plasat legtura dintre
soft i hardware pentru permisiune accesrii camerei frontale i din spate. Acest este verificat de
pe telefonul meu android.
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Pentru a crea o nou activitate am creat o nou fiier din categoria Activity, i apoi am selectat EmtyActivity
de aici am obinut dou fiiere i s-a scris automat activitatea aceasta n fiierul Manifest. Am plasat mai
nti de toate un buton Back i un ImageView cu plasarea capturii de la camer.
Pentru butonul Back am scris o funcie care trebuie s se rentoarc la vechia activitate. i evident am
plasta variabila butonului Back.
Button back = (Button) findViewById(R.id.backbutton);
back.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent(Main2Activity.this, MainActivity.class);
startActivity(i);
}
});
Iar pentru imaginea pe care am transferat-o n activitatea aceasta funcia este urmtoarea:
ImageView view = (ImageView) findViewById(R.id.ivPhoto);
Bitmap bitmap = getIntent().getExtras().getParcelable("name");
view.setImageBitmap(bitmap);
Se preia fiierul din Intetul de la prima activitate se plaseaz intentul n aceast aceasta activitate i are loc
citire fiierului. Rezultatul capturii v voi prezenta n figura 4.
Concluzia:
n urma efecturii acestei lucrri de laborator am realizat sarcinile de a crea 4 funcii. Toate aceste funcii
le am scris aparte avnd fiecare structura aparte. Prima elaborarea unei notificri unde am lucrat cu
notificarea am avut probleme cu timer-ul. Apoi am realizat cutarea ntr-un n google cu intenia de a alege
browserul pe care dorete s-l aleag. Am realizat cum creez o camer i n urma acestui laborator am realizat
cum este mai uor s structurm funciile de executare. Apoi am creat coordonarea dintre una sau mai multe
activiti, cu transmitere de informaie sau cu accesarea.
Biografia:
- https://www.tutorialspoint.com/android/
- https://developer.android.com
- https://www.raywenderlich.com/category/android
- www.javatpoint.com/android-tutorial