facebook twitter hatena line email

Android/クリックイベント

提供: 初心者エンジニアの簡易メモ
移動: 案内検索

ボタン設置

ボタンインスタンスにイベントを付ける場合

import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SampleActivity extends Activity
{
  private Button btn;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    
    btn = (Button)findViewById(R.id.button01);
    btn.setText("please,click");
    btn.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            btn.setText("thank you");
        }
    });
  }
}

クラスにイベントを付ける場合(あまりよくない)

import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class SampleActivity extends Activity implements OnClickListener
{
  private Button btn;
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    
    btn = (Button)findViewById(R.id.button01);
    btn.setText("please,click");
    btn.setOnClickListener(this);
  }
  public void onClick(View v) {
    if (v == btn) {
      btn.setText("thank you");
    }
  }
}

main.xmlに追加

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