Thursday, May 31, 2012

Basic Android Training : Learn to response to the Click


Simple Calculation
Create Android project named as AdditionApp.
Change the following files:
Main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

<EditText
        android:id="@+id/txtNum1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10"
        android:hint="@string/edit_message" >

        <requestFocus />
    </EditText>


    <EditText
        android:id="@+id/txtNum2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:ems="10" />



    <Button
        android:id="@+id/btnCal"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/btnCalLabel"
        android:onClick="calculate"/>

    <TextView
        android:id="@+id/tvResult"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="TextView" />

</LinearLayout>




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

    <string name="hello">Hello World, MyFirstApp2!</string>
    <string name="app_name">My First App 2</string>
    <string name="edit_message">Edit here.</string>
    <string name="btnCalLabel">Calculate</string>

</resources>

AdditionApp.java
package com.kent;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;


public class AdditionApp extends Activity {
           
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
   
    /** Called when the user click the Calculate button */

    public void calculate(View view) {
           
            Log.i("MyFirstApp2", "calculate() ...start calculating...");
           
            // Get input from Number 1
            EditText etNum1 = (EditText)findViewById(R.id.txtNum1);
            int num1 = Integer.parseInt(etNum1.getText().toString());
           
            // Get input from Number 2
            EditText etNum2 = (EditText)findViewById(R.id.txtNum2);
            int num2 = Integer.parseInt(etNum2.getText().toString());
           
            // Show the result in TextView
            TextView tvResult = (TextView)findViewById(R.id.tvResult);
            tvResult.setText(String.valueOf(num1+num2));
           
            Log.i("MyFirstApp2", "Calculate done!");

    }

}

In this application, it takes in two input: num1 and num2, and add the two value then show it in a TextView object. It first turn the number entered as String into a integer value (using Integer.parseInt() method), then add them.

Then, using String.valueOf() method to turn the result back to a String value, and set this value to TextView tvResult object.

Android..cool!

No comments:

Post a Comment