Categories
SugiBlog ホームページ制作・システム開発

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

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));

クリック時のイベントを設定

private Button.OnClickListener iconButtonOnClickListener = new Button.OnClickListener() {
public void onClick(View v) {
  clickHandler.sendEmptyMessage(0);
  }
};
private Handler clickHandler = new Handler() {
  public void handleMessage(Message msg){
    iconButton_Click();
  }
};
private void iconButton_Click() {
  // ボタンを押したときの処理を記述
}

アクティビティ関係なしのクリックイベントを追加する場合

icon_button.setOnClickListener(new View.OnClickListener() {
  @Override
  // ボタンがクリックされた時に呼び出されます
  public void onClick(View v) {
    Button button = (Button) v;
    //処理を記述 
    }
  }
);
7,872 views

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*