●android.widget.Button
■ボタンの文字を変更する
android.widget.Button b=(android.widget.Button)findViewById(R.id.button);
b.setText("test");
(android.widget.Button)findViewById(R.id.button).setText("test");
これでも動作するはずなのだが、エラーが出て動かなかった。
■文字の色を変更する
android.widget.Button b=(android.widget.Button)findViewById(R.id.button);
b.setTextColor(android.graphics.Color.parseColor("#FF0000"));
■ボタンの色を変更する
android.widget.Button b=(android.widget.Button)findViewById(R.id.button);
b.setBackgroundColor(android.graphics.Color.parseColor("#F2D8DF"));
■ボタンを表示・非表示にする
android.widget.Button button = (android.widget.Button) findViewById(R.id.button);
if (android.widget.Button.VISIBLE == button.getVisibility()){
//もし見えたら、見えなくする
button.setVisibility(android.widget.Button.INVISIBLE);
}else {
//見えなかったら、見えるようにする
button.setVisibility(android.widget.Button.VISIBLE);
}
■ボタンを有効・無効にする
android.widget.Button button = (android.widget.Button) findViewById(R.id.button2);
if (true == button.isEnabled()){
//有効なら無効化する
button.setEnabled(false);
}else {
//無効なら有効化する
button.setEnabled(true);
}
■動的にボタンを張り付ける
android.widget. Button b=new android.widget.Button(this);
b.setText("test");
setContentView(b);
画面いっぱいにボタンが表示されます、レイアウトマネージャを使った方がいいですね。
■ボタンが押された時の動作を記述する
@Override
protected void onCreate(Bundle savedInstanceState) {
・・・・
インナークラスをボタンに登録する
android.widget.Button button=(android.widget.Button)findViewById(R.id.button);
button.setOnClickListener(new button_listener());
}
インナークラスを作成して動作を記述する
private class button_listener implements android.view.View.OnClickListener {
public void onClick(android.view.View view) {
//画面にメッセージを表示する
android.content.Context context = getApplicationContext();
android.widget.Toast t=android.widget.Toast.makeText(context, "ボタンが押されました", android.widget.Toast.LENGTH_LONG);
t.show();
}
}
▼もっと短く動作を記述する
android.widget.Button button;
button=(android.widget.Button)findViewById(R.id.button);
button.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(android.view.View view) {
}
});
無名クラスを使うことでもっと短く書く事ができます。
でも、もっともっと短く書くとこうなるでしょうか?
((android.widget.Button)findViewById(R.id.button))
.setOnClickListener(new android.view.View.OnClickListener() {
public void onClick(android.view.View view) {
}
});
まあ、ただ単に短縮しただけですが。
▲トップページ
>
android