2012年01月27日

複数のボタンの動作を設定する


今回はmain画面にボタンを2つ配置しそれぞれにイベントを割り当てました
ボタンのイベントについては前回を参照してください
ボタンがクリックされるイベントを取得
まずはres/layout/main.xml
にボタンを2つ配置します
<?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" >

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

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

</LinearLayout>

それぞれidをbutton1、button2としています


次に次にActivity(TestActivity)の設定です
package blog.test;

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

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

        /**それぞれのidを設定**/
        Button button1=(Button)findViewById(R.id.button1);
        Button button2=(Button)findViewById(R.id.button2);
        /**ボタンが押されたらonClickが動作するよう設定**/
        button1.setOnClickListener(this);
        button2.setOnClickListener(this);
        }

/**ボタンが押された時の処理**/
public void onClick(View v){
    switch(v.getId()){
      case R.id.button1:
          showMessage("button1 が押されました。");
          break;
      case R.id.button2:
    	  showMessage("button2 が押されました。");
          break;
    }
}
    
    /**トースト設定**/
    protected void showMessage(String msg){
        Toast.makeText(
            this,
            msg, Toast.LENGTH_LONG).show();
    }
    

}

10行目のimplements OnClickListenerとあります
自分自身のクラスに「OnClickListener」インタフェースを実装する
といいます
これはonCreateで設定したものにOnClickListenerが使えるよ〜
ということを表します

button1を押すと・・・
device9.jpg

button2を押すと・・・
device10.jpg
スポンサードリンク

posted by kenken at 11:16 | Comment(0) | TrackBack(0) | ウィジェット ボタン | このブログの読者になる | 更新情報をチェックする
2012年01月26日

基本のデータ型


javaで扱う基本のデータ型です 題名
データ型 内容
boolean true or false -
char 16ビットUnicode文字 -
byte 8ビット整数 -128〜128
short 16ビット整数 -32768〜32767
int 32ビット整数 -2147483648
〜2147483647
long 64ビット整数 -9223372036854775808
〜9223372036854775807
float 32ビット倍精度浮動小数点数 -
double 64ビット倍精度浮動小数点数 -

boolean型
boolean型は true か false か、真か偽かの論理情報を扱います
boolean 変数名 ( = 初期値 );
として使います

byte型
byte 型のデータは符号付きで-128〜127の範囲の整数を保持します
ただしbyte 型で演算を行うと演算結果は int 型に変換されるため
int 型の変数で値を受け取る必要があります
また、0による除算はできませんw

short型
short型のデータは符号付きで-32768〜32767
の範囲の整数を保持します
ただしbyte同様shortで演算を行うと演算結果は int 型に変換されるため
int 型の変数で値を受け取る必要があります
また、こちらも0による除算はできませんw


int型
int 型のデータは符号付きで-2147483648〜2147483647
の範囲の整数を保持します
int型の演算を行った結果、int 型の扱えるデータの範囲を超えた場合には数値がループします
またbyte同様に0による除算はできません
Javaでは整数の数字デフォルトは int 型が設定されます

long型
long 型のデータは符号付きで-9223372036854775808
〜9223372036854775807
といった非常に大きな値を扱うことができます
Javaでは整数数字のデフォルトでは int 型のためlong 型へ値を代入する際に
" l "または " L "を記述します
<例>long test = 5000000000000000000L;

float型
float 型は浮動小数値を含むデータを扱うことができます
扱えることのできる範囲は±1.4e-45〜±3.4028235e38
e-45は10の-45乗(10^-45)、e38は10の38乗(10^38を表します
浮動小数点は指数を意味する"e"(または "E")を使用することができます
Javaでは小数のデフォルトではdouble型のためflort型へ値を代入する際に
"f"または "F"を記述します
<例>float test = 0.1234e2f; // 0.1234×10^2=12.34となる

double型
double型はfloat浮動小数値を含むデータを扱うことができます
Javaでは小数の数字デフォルトはdouble型が設定されます
扱えることのできる範囲は
±4.9e-324〜±1.7976931348623157e+308
となっておりfloatより精度の高い値を扱うことができます
スポンサードリンク

posted by kenken at 18:13 | Comment(0) | TrackBack(0) | java 数値 | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。