「android」カテゴリーアーカイブ

Android Tips setBuiltInZoomControls

androidでGoogleマップを表示時に拡大縮小を行うボタンを出したい場合がある。
本に載ってる通りにgetZoomControls()メソッドを使うと非推奨とされるようだ。
APIリファレンスにも@Deprecatedってされてる。

非推奨コード

その場合はGoogleのMapViewのAPIリファレンスに載ってる
setBuiltInZoomControls(true)を使用するとよい。
一行で書ける。
apiドキュメント

 
    /**
     * 初期処理
     */
	@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        //レイアウトを設定する
        setContentView(R.layout.main);

        // MapViewオブジェクトを取得
        MapView map_view = (MapView) findViewById(R.id.mapview);

//        ZoomControls zoom = (ZoomControls)map_view.getZoomControls();
//        ViewGroup.LayoutParams layout = new ViewGroup.LayoutParams(
//        		ViewGroup.LayoutParams.FILL_PARENT,
//        		ViewGroup.LayoutParams.FILL_PARENT);
//        zoom.setLayoutParams(layout);
//        zoom.setGravity(Gravity.BOTTOM | Gravity.CENTER_HORIZONTAL);
//        map_view.addView(zoom);
    
    //上記処理が一行で書ける
        map_view.setBuiltInZoomControls(true);

	}

マップをクリックするとズームボタンが出る
推奨

android tips Toast

androidにはToastクラスと言うのがあって、javascriptの
alertみたいにチョットしたメッセージを表示したい時に
使用できる。

表示するメッセージは直接指定と、リソースから取ってくるやり方がある
Toast.makeText(Context context, CharSequence text, int duration)
Toast.makeText(Context context, int resId, int duration)

■リファレンス
http://developer.android.com/intl/ja/reference/android/widget/Toast.html

■以下サンプル

 
package net.oike.androidtips;

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

/**
 * 適当なクラス
 * @author oike
  */
public class ToastSample extends Activity {

	/**
	 * 初期化
	 */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        //ボタンを取得する
        Button b = (Button)findViewById(R.id.Button01);

        //ボタンクリック処理
        b.setOnClickListener(new View.OnClickListener() {

			public void onClick(View v) {

				setText();

				//トーストの表示(直接書く)
				Toast.makeText(getApplicationContext(), "test", Toast.LENGTH_SHORT).show();

				//トーストの表示(リソースから文字を取得)
				Toast.makeText(getApplicationContext(), R.string.toastMoji, Toast.LENGTH_SHORT).show();

			}
		});

    }

    /**
     * ボタンクリック時の操作
     */
    private void setText() {
    	//EditText text = (EditText)findViewById(R.id.TextView01);
    	TextView textView = (TextView)findViewById(R.id.TextView01);
    	textView.setText("テキストの文字変更したよん");
    }

}

■トーストは以下の表示
toast1

toast2

余談:
SyntaxHighlighter Evolvedプラグインを今まで使ってなかったので
入れてみた。便利や~(‘-‘*)