カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

任意の位置にViewを追加する

任意の位置にImageView等を表示したいとき

private final int WC = ViewGroup.LayoutParams.WRAP_CONTENT;

TableLayout tableLayout = new TableLayout(this);
tableLayout.setGravity(Gravity.CENTER_VERTICAL); //表示位置
tableLayout.setHorizontalGravity(Gravity.RIGHT); //水平方向位置

続きを読む…»

5,904 views

画像ボタンのクリックイベント

ImageViewで画像を設置し、クリックイベントを実装したいとき

・レイアウトはXMLに記述する場合

ImageView iconButton = (ImageView)findViewById(R.id.iconButton);
iconButton.setOnClickListener(iconButtonOnClickListener);

・コードから作成する場合

private final int WC = ViewGroup.LayoutParams.WRAP_CONTENT;
ImageView imgview = new ImageView(this); 
imgview.setImageBitmap(BitmapFactory.decodeResource(getResources(),R.drawable.icon_button));
imgview.setOnClickListener(iconButtonOnClickListener);
addContentView(imgview, new LayoutParams(WC, WC));

続きを読む…»

15,453 views

画像ボタンを押したときに画像を入れ替える

ImageViewで画像ボタンを作成したときに、押した感覚がほしい場合に
リソースとしてXMLファイルを作成します。

・ImageViewをレイアウトに定義

<ImageView
  android:id="@+id/imageButton"
  android:layout_width="wrap_content"
  android:layout_height="wrap_content"
  android:layout_gravity="right"
  android:src="@drawable/image_buttons" />

続きを読む…»

7,492 views

Android GoogleMapにボタン等を設置する

全体表示したGoogleMapの上に、ボタン等を設置するには
レイアウトのXMLで、FrameLayout内にLinearLayoutを複数入れます。

画像を表示するだけなら、Overlayを継承したクラスでdrawすることができます。
しかし、それでは画像をクリックしたりということができません。(おそらく)

FrameLayoutを使うと、グラフィカルに編集することもできるので
よいのではないでしょうか。

続きを読む…»

7,024 views

画面をスリープ状態にさせない

常時、アクティブにしておきたいアクティビティのonCreateで

// 画面をノンスリープ状態に
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

onPause時に解除させる

// ノンスリープ状態を解除
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
4,720 views