Androidアプリ開発で今後も流用できそうなサンプルを中心に主に「自分のために」投稿しています。 細かい説明はしません。とりあえずご参考まで。 ただし自己責任でお使いください。 開発は ICONIA TAB A500(Andorid 3.1,)、Sony Tablet S(4.1)で行っています。
2013年3月5日火曜日
ImageButtonを押したら背景色を変える
View pushed = null;
//ボタン表示
private void cateBtn(ImageButton btn,int cate, String cateImg)
{
int id= getResources().
getIdentifier(cateImg, "drawable", getPackageName());
btn.setLayoutParams(new LinearLayout.LayoutParams((int) (90.0*hw*0.9),(int) (114.0*hh*0.9)));
btn.setImageResource(id);
btn.setAdjustViewBounds(true);
btn.setPadding(0,0,0,0);
btn.setTag(cate);
layout.addView(btn);
//タッチされたら背景色を変える(前のボタンは戻す)
btn.setOnTouchListener(new View.OnTouchListener()
{
public boolean onTouch(View v, MotionEvent event) {
if(event.getAction() == MotionEvent.ACTION_DOWN)
{
if (pushed != null) pushed.setBackgroundColor(Color.GRAY); //戻す
v.setBackgroundColor(Color.YELLOW);
}
if(event.getAction() == MotionEvent.ACTION_UP)
{
//v.setBackgroundColor(Color.GRAY);
}
return false;
}
});
//ボタンが押されたとき
btn.setOnClickListener(new OnClickListener(){
public void onClick(View view){
if (pushed != null) pushed.setBackgroundColor(Color.GRAY); //戻す
view.setBackgroundColor(Color.YELLOW);
pushed = view;
}
});
}
登録:
コメントの投稿 (Atom)
0 件のコメント:
コメントを投稿