Освой программирование играючи

Сайт Александра Климова

Шкодим

/* Моя кошка замечательно разбирается в программировании. Стоит мне объяснить проблему ей - и все становится ясно. */
John Robbins, Debugging Applications, Microsoft Press, 2000

Учебная программа

Для изучения Java нам понадобится учебная программа - испытательный стенд, на котором предстоит проверять свой бред код. На первых порах, наверное, нам вполне хватит формы с одним текстовым полем, текстовой меткой и кнопкой. Мы напишем учебный код, затем запустим программу, далее нажмём на кнопку и получим результат в текстовом поле или текстовой метке. На мой взгляд, все просто и наглядно.

Для создания учебной программы вам нужно пройти урок Создаём первое приложение. Созданная форма и послужит основой учебной заготовки. При повторении указанного урока присвойте проекту более понятное имя, например, "ExpressCourse". Выбирайте шаблон Empty Activity. Простейшая заготовка создана.

Продолжаем настраивать учебную форму. Немного модифицируем экран приложения для удобства. Сменим разметку на LinearLayout и добавим необходимые элементы. Присвоим элементам понятные имена.


<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:id="@+id/LinearLayout1"
              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:orientation="vertical"
              tools:context="ru.alexanderklimov.expresscourse.MainActivity">

    <TextView
        android:id="@+id/textViewInfo"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textSize="30sp"/>

    <EditText
        android:id="@+id/editText"
        android:layout_width="match_parent"
        android:layout_height="wrap_content">

        <requestFocus/>
    </EditText>

    <Button
        android:id="@+id/buttonGetResult"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:onClick="onClick"
        android:text="Нажми"/>

</LinearLayout>

Сейчас код для главного экрана приложения выглядит так:


package ru.alexanderklimov.expresscourse;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

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

Нам нужно добавить немного своего кода, чтобы приложение стало более удобным для пользования. Сразу после первой фигурной скобки объявим переменные для кнопки, метки и текстового поля, а также напишем заготовку для щелчка мышки. Так как вы ещё не понимаете смысла в данных действиях, то просто скопируйте код.


package ru.alexanderklimov.expresscourse;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    private Button mButton;
    private EditText mResultEditText;
    private TextView mInfoTextView;

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

        mButton = (Button)findViewById(R.id.buttonGetResult);
        mResultEditText = (EditText)findViewById(R.id.editText);
        mInfoTextView = (TextView)findViewById(R.id.textViewInfo);
    }

    public void onClick(View view) {
        mResultEditText.setText("Test");
    }
}

Запустим учебный проект и получим следующее приложение:

Если щёлкнуть по кнопке, то в текстовом поле появится слово Test. Теперь у нас есть учебная заготовка для изучения Java.

Реклама