2012年01月17日

エディットテキストの入力内容を取得する


前回はres/layout/main.xmlにエディットテキストを配置しました
エディットテキストを作成する

今回はユーザーが入力した値を取得したいと思います
前回のres/layout/main.xmlのEditTextにボタン1つを追加します
ソースコード
<?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/editText1"
    	android:layout_width="fill_parent"
    	android:layout_height="wrap_content" >

    	<requestFocus />

    </EditText>

	<Button
		android:id="@+id/button_test"
		android:layout_width="wrap_content"
		android:layout_height="wrap_content"
		android:text="Button" />

</LinearLayout>
 

EditTextにid:editText_test
Buttonにid:button_test
というidを設定しています

ボタンが押された時の処理は下記を参照してください
ボタンがクリックされるイベントを取得
次はMainのActivity(今回名前はTestActivity)の設定です
package blog.test;

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

public class TestActivity extends Activity {


	
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        //id button_testをbに当てはめている
        Button b = (Button)findViewById(R.id.button_test);

        //bが押された時の動作
        b.setOnClickListener(new View.OnClickListener() {
        	public void onClick(View v) {
                //editText_testをeに当てはめている
                EditText e = (EditText)findViewById(R.id.editText_test);
                //testという文字列にeを代入する
        		String test =e.getText().toString();
        		//testを表示する
        		showMessage(test);
        	}
        	});
    	}
    
	/**トースト設定**/
	protected void showMessage(String msg){
		Toast.makeText(
			this, 
			msg, Toast.LENGTH_LONG).show();
	}
}

findViewByIdメソッドでeにeditText_testのidを設定
String testにgetText()で代入
testを表示しています
device5.jpg

スポンサードリンク

2011年12月18日

エディットテキストを作成する


EditTextとは・・・
ユーザーが自由に入れることができるボックスのことですw

EditTextを作成する方法はテキストビューと同様に主に2通りあります
静的に決定しているものはXMLで定義して
動的に決定するものはコードで定義するというのが一般的です

静的
動的(そのうち・・・w)


XMLファイルにより定義

今回は静的なEditTextをXMLファイルにより定義します

今回はidにedittext_testを割り当てています


res/layout/main.xml
で<@+id/edittext_test>でプログラムからアクセスするIDを定義します
<EditText
    android:id="@+id/edittext_test"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
  />
これでmain画面にEditTextが追加されます

3行目、4行目ですが
layout_width:幅を決めるパラメータ
layout_height:高さを決めるパラメータ
となっています

その内容ですが
幅がfill_parent、高さがwrap_contentとなっています
fill_parent:画面の大きさに合わせてサイズ
wrap_content:内容に合わせたサイズ
となります
device2.JPG
スポンサードリンク