In Android, you can use “EditText” class to create an editable textbox to accept user input.
This tutorial show you how to create a textbox in XML file, and demonstrates the use of key listener to display message typed in the textbox.
1. EditText
Open “res/layout/main.xml” file, add a “EditText” component.
File : res/layout/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/editText" android:layout_width="match_parent" android:layout_height="wrap_content" > <requestFocus /> </EditText> </LinearLayout>
2. EditText Listener
Attach a key listener inside your activity “
onCreate()
” method, to monitor following events :- If “enter” is pressed , display a floating box with the message typed in the “EditText” box.
- If “Number 9″ is pressed, display a floating box with message “Number 9 is pressed!”.
File : MyAndroidAppActivity.java
package com.abhi.android; import android.app.Activity; import android.os.Bundle; import android.view.KeyEvent; import android.view.View; import android.view.View.OnKeyListener; import android.widget.EditText; import android.widget.Toast; public class MyAndroidAppActivity extends Activity { private EditText edittext; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); addKeyListener(); } public void addKeyListener() { // get edittext component edittext = (EditText) findViewById(R.id.editText); // add a keylistener to keep track user input edittext.setOnKeyListener(new OnKeyListener() { public boolean onKey(View v, int keyCode, KeyEvent event) { // if keydown and "enter" is pressed if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_ENTER)) { // display a floating message Toast.makeText(MyAndroidAppActivity.this, edittext.getText(), Toast.LENGTH_LONG).show(); return true; } else if ((event.getAction() == KeyEvent.ACTION_DOWN) && (keyCode == KeyEvent.KEYCODE_9)) { // display a floating message Toast.makeText(MyAndroidAppActivity.this, "Number 9 is pressed!", Toast.LENGTH_LONG).show(); return true; } return false; } }); } }
3. Demo
Run the application.
1. Type something inside the textbox, and press on the “enter” key :
This is sample TextBox with a Toast Message.
OraNgE.
No comments:
Post a Comment