Layouty

Layouty

Program: przedstawiający wykorzystanie różnych layoutów do wykonania dodawania wprowadzonych przez użytkownika dwóch liczb.

Jak w opisie.

Kompilator: Eclipse

Film:

Kod programu:

Główna klasa – backend:

package com.example.projekt4_layout;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.Button;

public class MainActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		Button bDane=(Button)findViewById(R.id.bDane);
		
		bDane.setOnClickListener(new View.OnClickListener() {
			@Override
			public void onClick(View v) {
			Intent dane= new Intent(getApplicationContext(), Dane.class);
			startActivity(dane);
			}
		});
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		getMenuInflater().inflate(R.menu.main, menu);
		return true;
	}
}

Klasa dane:

package com.example.projekt4_layout;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;

public class Dane extends Activity {
	public static double wynik;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.dane);
		
		Button bWynik=(Button)findViewById(R.id.buttonWynik);
		final EditText eA=(EditText)findViewById(R.id.editTextA);
		final EditText eB=(EditText)findViewById(R.id.editTextB);
		bWynik.setOnClickListener(new View.OnClickListener() {	
			@Override
			public void onClick(View v) {
				double a=Double.valueOf(""+eA.getText());
				double b=Double.valueOf(""+eB.getText());
				wynik=a+b;
				Intent wynik= new Intent(getApplicationContext(), Wyniki.class);
				startActivity(wynik);
			}
		});
	}
}

Klasa wyniki:

package com.example.projekt4_layout;

import android.app.Activity;
import android.os.Bundle;
import android.widget.EditText;

public class Wyniki extends Activity {
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.wyniki);
		EditText eWynik=(EditText)findViewById(R.id.editTextWynik);
		eWynik.setText(""+Dane.wynik);
	}
}

Layout klasy głównej:

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

    <Button
        android:id="@+id/bDane"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="102dp"
        android:text="@string/dane" />

</RelativeLayout>

Layout klasy “Dane”:

<?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" >

    <EditText
        android:id="@+id/editTextA"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="@string/liczba_a" >

        <requestFocus />
    </EditText>

    <EditText
        android:id="@+id/editTextB"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="@string/liczba_b" />

    <Button
        android:id="@+id/buttonWynik"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/wynik" />

</LinearLayout>

Layout klasy “Wyniki”:

<?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" >

    <EditText
        android:id="@+id/editTextWynik"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="@string/wynik" >

        <requestFocus />
    </EditText>

</LinearLayout>