┬з 2. рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдбрд┐рдЬрд╛рдЗрди, рд╕рдВрдХреНрд░рдордг рд╡рд░реНрдЧ - рдЖрд╢рдп

рдореИрдВ рдЙрди рдкрд╛рдардХреЛрдВ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рджреЗрддрд╛ рд╣реВрдВ рдЬреЛ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЕрд░реНрде рд╕рдВрдмрдВрдзреАред рдореИрдВ рдЗрди рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдХреЛ рд╢рдмреНрдж рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рд╡реЗ рдЕрдзрд┐рдХ рдкрдардиреАрдп рд▓рдЧрддреЗ рд╣реИрдВ, рдХреНрдпрд╛ рдпрд╣ рдЖрд╡рд╢реНрдпрдХ рд╣реИ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдмрд╛рд╣рд░ рд░рдЦрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? рдпрджрд┐ рд╣рд╛рдВ, рддреЛ рдХрд┐рд╕ рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╣реИ? рдХреНрдпрд╛ рдореБрдЭреЗ рд╕реНрд░реЛрдд рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ? рдореИрдВ рдЖрдкрдХреЛ рдпрд╣ рднреА рдпрд╛рдж рджрд┐рд▓рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рдмреНрд▓реЙрдЧ gglphone.com рдкрд░ рдЗрди рд╕рднреА рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдФрд░ рдЕрдиреНрдп рд╕рдорд╛рдЪрд╛рд░реЛрдВ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ



рдПрдХ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдиреЗ рдХреЗ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рднрд╛рдЧ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ - рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд░рдирд╛ред рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рдЙрджреНрдпреЛрдЧ рдореЗрдВ, рд╕рд╛рде рд╣реА рд╕рд╛рде рдореЛрдмрд╛рдЗрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рдЦрд░рд╛рдм рдбрд┐рдЬрд╝рд╛рдЗрди рд╡рд╛рд▓рд╛ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрднреА-рдХрднреА рд╕рдВрднрд╛рд╡рд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрд╛рдлреА рдХрдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╕рдХреНрд╖рдо рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреА рдмрд╛рддрдЪреАрдд рдХрд╛ рдордиреЛрд╡рд┐рдЬреНрдЮрд╛рди рд╣реИ, рдЬреЛ рдкреНрд░рднрд╛рд╡ рдХрд╛рд░реНрдпрдХреНрд░рдо рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдЖрдЗрдП рд╕рдмрд╕реЗ рд╕рд░рд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ - рд▓реЙрдЧрд┐рди + рдкрд┐рди рдлрд╝реЙрд░реНрдо рдХрд╛ рдирд┐рд░реНрдорд╛рдг рд╢реБрд░реВ рдХрд░реЗрдВ, рдФрд░ рдПрдХ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рд╣рдо рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рдПрдиреАрдореЗрд╢рди рдкреНрд░рднрд╛рд╡ рдЬреЛрдбрд╝реЗрдВрдЧреЗред





рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╕рд░рд▓ рдХреЛрдб рд╣реИ:

package com.google.android.hello;



import android.app.Activity;

import android.os.Bundle;

public class HelloAndroid extends Activity {



@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.main);

}

}








рд╣рдо рдирд┐рдореНрди рдкрд░рд┐рдгрд╛рдо рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦрддреЗ рд╣реИрдВ:







рдпрд╣ рдХреИрд╕реЗ рд╣реБрдЖ? рд╕рдм рдХреБрдЫ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИред SetContentView () рдХрдорд╛рдВрдб - рдХреНрд▓рд╛рд╕ рдХреА рд╡рд░реНрддрдорд╛рди рдЧрддрд┐рд╡рд┐рдзрд┐ рдХреЗ рд▓рд┐рдП рд▓реЗрдЖрдЙрдЯ рдХреЛ рд▓реЛрдб рдХрд░рддрд╛ рд╣реИред рд▓реЗрдЖрдЙрдЯ рд╣рдорд╛рд░реЗ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рд╡рд┐рд╡рд░рдг рд╣реИред рд╣рдорд╛рд░реЗ рдЧрддрд┐рд╡рд┐рдзрд┐ рд╡рд░реНрдЧ рдХреЗ рд▓рд┐рдП, рд╣рдо Layout.main рдХреЛ рд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рд╡рд┐рд╡рд░рдг main.xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реИ, рдФрд░ рдпрд╣ рдлрд╝рд╛рдЗрд▓ рд▓реЗрдЖрдЙрдЯ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИ, рдЬреЛ рдмрджрд▓реЗ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд░реЗрд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реИред







рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ main.xml рдлрд╝рд╛рдЗрд▓ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИ







рдЫрд╡рд┐ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЛ рджрд┐рдЦрд╛рддреА рд╣реИред рдореБрдЦреНрдп LinearLayout рддрддреНрд╡ рдореЗрдВ рдЕрдиреНрдп рд╕рднреА рддрддреНрд╡ (TextView, EditText) рд╢рд╛рдорд┐рд▓ рд╣реИрдВред рдЙрдиреНрд╣реЗрдВ рдЙрд╕реА рдХреНрд░рдо рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬрд┐рд╕рдореЗрдВ рд╡реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рд╣реЛрддреЗ рд╣реИрдВред

рдкреНрд░рддреНрдпреЗрдХ рддрддреНрд╡ рдореЗрдВ рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рд╣рдо рддрддреНрд╡ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рд╣рдо рд╕реНрдХреНрд░реАрди рдХреЗ рдХрд┐рдирд╛рд░реЛрдВ рд╕реЗ рдЗрдВрдбреЗрдВрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдПрдВрдбреНрд░реЙрдЗрдб рд╡рд┐рд╢реЗрд╖рддрд╛ рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ: рдкреИрдбрд┐рдВрдЧ = 10 рдбрд┐рдкред рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВ main.xml рдлрд╝рд╛рдЗрд▓ рдХреЛ рдЙрд╕рдХреЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд░реВрдк рдореЗрдВ рджреВрдВрдЧрд╛:

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:background="#c7c7c7"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:padding="10dip">

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Login" />

<EditText

android:maxLines="1"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

id="@+id/login" />

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Pin code" />

<EditText

android:maxLines="1"

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:password="true"

id="@+id/pin" />









рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рд╣реИред рдЖрдЗрдП рдЕрдкрдиреЗ рд░реВрдк рдореЗрдВ рд╢реЗрдХ рдкреНрд░рднрд╛рд╡ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝реЗрдВред рдкреНрд░рднрд╛рд╡ рдХрд╛ рд╕рд╛рд░ рдПрдиреАрдореЗрд╢рди рд╣реИ, рдЕрдЧрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ рдкрд┐рди рдХреЛрдб рджрд░реНрдЬ рдХрд░рддрд╛ рд╣реИ, рдЪрд╛рд░ рд╡рд░реНрдгреЛрдВ рдХрд╛ рдирд╣реАрдВ, рддреЛ рдЗрдирдкреБрдЯ рд╡рд┐рдВрдбреЛ рд╣рд┐рд▓рддреА рд╣реИред рдпрджрд┐ рдЖрдк рдкрд┐рди рдХреЛрдб рд╕рд╣реА рдврдВрдЧ рд╕реЗ рджрд░реНрдЬ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЕрдЧрд▓реА рд╡рд┐рдВрдбреЛ рдкрд░ рдЬрд╛рдПрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдбреЗрдЯрд╛ рджрд░реНрдЬ рдХрд┐рдП рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж рд╕рдХреНрд░рд┐рдп рд╣реЛред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЧрддрд┐рд╡рд┐рдзрд┐ рд╡рд░реНрдЧ рдореЗрдВ, рджреЛ рдСрдмреНрдЬреЗрдХреНрдЯ рдмрдирд╛рдПрдБ:

EditText editLogin;

EditText editPassword;







рд╣рдо рдЙрдиреНрд╣реЗрдВ id рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ main.xml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╡рд┐рд╡рд░рдг рдХреЗ рд╕рд╛рде рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдФрд░ рд╕реЗрдЯрдСрдирдХреНрд▓рд┐рдХрдХреНрд▓рд┐рдХрд╕реНрдЯрдирд░ () рдлрд╝рдВрдХреНрд╢рди рдХреЛ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ, рдЬреЛ рдЗрдирдкреБрдЯ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.main);

editLogin = ((EditText) this.findViewById(R.id.login));

editPin = ((EditText) this.findViewById(R.id.pin));

editPin.setOnClickListener(this);

}







рдЖрдЧреЗ, рд▓рдВрдмреЗ рд╕рдордп рддрдХ рд╡рд┐рд▓рдВрдм рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╕рднреА рдХреЛрдб рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рджреВрдВрдЧрд╛ред

package com.google.android.hello;



//

import android.app.Activity;

import android.app.NotificationManager;

import android.content.Intent;

import android.os.Bundle;

import android.view.View;

import android.view.animation.Animation;

import android.view.animation.AnimationUtils;

import android.widget.EditText;



public class HelloAndroid extends Activity implements View.OnClickListener{

EditText editLogin;

EditText editPin;

@Override

public void onCreate(Bundle icicle) {

super.onCreate(icicle);

setContentView(R.layout.main);

editLogin = ((EditText) this.findViewById(R.id.login));

editPin = ((EditText) this.findViewById(R.id.pin));

editPin.setOnClickListener(this);

}

public void onClick(View v) {

// , xml shake.xml

Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake);

//

NotificationManager nm = (NotificationManager)

getSystemService(NOTIFICATION_SERVICE);

// pass

String pass = editPin.getText().toString();

// 4

if( pass.length() == 4)

{

// , - "Welcome + "

nm.notifyWithText(R.id.login,

"Welcome "+editLogin.getText().toString(),

NotificationManager.LENGTH_SHORT, null);

//

Intent intent = new Intent();

intent.setClass(HelloAndroid.this, WelcomeAndroid.class);

startActivity(intent);

// Activity

finish();

}

else

{

// -

editPin.startAnimation(shake);

// "Wrong pin, must be 4 digits"

nm.notifyWithText(R.id.login,

"Wrong pin, must be 4 digits",

NotificationManager.LENGTH_SHORT, null);

//

editPin.setText("");

}

}







рдЖрдЗрдП рд╣рдо рдХреБрдЫ рдмрд┐рдВрджреБрдУрдВ рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдзреНрдпрд╛рди рджреЗрдВред рдЗрдВрдЯреЗрдВрдЯ рдХреНрд▓рд╛рд╕, рдЗрд╕рдХреА рдорджрдж рд╕реЗ рдПрдХреНрдЯрд┐рд╡рд┐рдЯреА рд╡рд┐рдВрдбреЛ рдХреЗ рдмреАрдЪ рдмрджрд▓рд╛рд╡ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред рд╣рдо рдПрдХ рдирдИ рд╡рд┐рдВрдбреЛ рд▓реЙрдиреНрдЪ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╣рдо рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╡рд░рдг рдмрдирд╛рддреЗ рд╣реИрдВ wel_android.xml

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

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:background="#c7c7c7"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

android:padding="10dip">

<TextView

android:layout_width="fill_parent"

android:layout_height="wrap_content"

android:text="Welcome Android" />









рддрджрдиреБрд╕рд╛рд░, рдЗрд░рд╛рджреЗ .setClass (HelloAndroid.this, WelcomeAndroid.class) рд╕рдВрдХреНрд░рдордг рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИ, рдФрд░ startActivity (рдЗрд░рд╛рджрд╛) рдлрд╝рдВрдХреНрд╢рди рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИред



4-рд╡рд░реНрдг рдкрд┐рди рдХреЛрдб рджрд░реНрдЬ рдХрд░рддреЗ рд╕рдордп рдФрд░ рд▓реЙрдЧрд┐рди рдХрд░реЗрдВ, рдирд┐рдореНрди рд╡рд┐рдВрдбреЛ рдкрд░ рдЬрд╛рдПрдВ:







рдПрдиреАрдореЗрд╢рди рдХреЗ рд▓рд┐рдП xml рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рдФрд░ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдПред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд░рд┐рд╕ рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдПрдХ рдПрдирд┐рдореЗрдЯреЗрдб рдлрд╝реЛрд▓реНрдбрд░ рдФрд░ рдЙрд╕рдореЗрдВ рджреЛ рдлрд╛рдЗрд▓реЗрдВ рдмрдирд╛рдПрдБ:



cycle_7.xml

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

<CycleInterpolator

xmlns:android=http://schemas.android.com/apk/res/android android:cycles="7" />








shake.xml

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

<translate

xmlns:android=http://schemas.android.com/apk/res/android android:fromXDelta="0"

android:toXDelta="10"

android:duration="1000"

android:interpolator="@anim/cycle_7" />








рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ AndroidMainfest.xml рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рди рднреВрд▓реЗрдВ:



<activity class=".WelcomeAndroid" android:label="@string/app_name">





рдпрд╣ рдореВрд▓ рд░реВрдк рд╕реЗ рдЦрд┐рдбрд╝рдХрд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рдЗрдВрдЯрд░рдлреЗрд╕ рдФрд░ рдмрджрд▓рд╛рд╡ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИред



рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреИрд░рд╛рдЧреНрд░рд╛рдл рдЕрдзрд┐рдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реЛрдВрдЧреЗ, рдЙрдирдореЗрдВ рдореИрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдореЗрдВ рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдзреНрдпрд╛рди рд╕реЗ рдЗрди рдореВрд▓ рдмрд╛рддреЗрдВ рдпрд╛рдж рд░рдЦреЗрдВ, рдлрд┐рд░ рдореИрдВ рдЙрди рдкрд░ рд╡реНрдпрд╛рдЦреНрдпрд╛ рдФрд░ рдЯрд┐рдкреНрдкрдгреА рдирд╣реАрдВ рдХрд░реВрдВрдЧрд╛ред



All Articles