android button按键得到焦点和点击后改变背景图片
我也接受android不久,今天来给同学们分享一下button得到焦点和点击后改变背景图片,其实很简单就是两个事件setOnFocusChangeListener和setOnClickListener就OK了。
这是Activity 中的代码。
package com.hai;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
public class Main extends Activity {
private TextView mTV;
private ImageButton imgBtn;
private Button btn;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mTV = (TextView) findViewById(R.id.tv);
imgBtn= (ImageButton) findViewById(R.id.imgBtn);
btn = (Button) findViewById(R.id.Btn);
// ImageButton的的onFous事件
imgBtn.setOnFocusChangeListener(new ImageButton.OnFocusChangeListener(){
@Override
public void onFocusChange(View v, boolean hasFocus) {
// TODO Auto-generated method stub
if(hasFocus == true) {
imgBtn.setImageResource(R.drawable.shortcut_pic_focus);
mTV.setText("图片按钮状态为:获得焦点");
}else{
imgBtn.setImageResource(R.drawable.shortcut_pic_unfocus);
mTV.setText("图片按钮状态为:失去焦点");
}
}
});
// ImageButton的单击事件
imgBtn.setOnClickListener(new ImageButton.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
imgBtn.setImageResource(R.drawable.shortcut_pic_focus);
mTV.setText("图片按钮状态为:单击");
}
});
// 普通按钮的单击事件
btn.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
imgBtn.setImageResource(R.drawable.shortcut_pic_unfocus);
mTV.setText("您按的是普通按钮!");
}
});
}
}
然后再写一个XML文件。
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello"
/>
android:id="@+id/imgBtn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/shortcut_pic_unfocus"
/>
android:id="@+id/Btn"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Button按钮"
/>
大伙直接把代码拿过去就可以看到效果,记得自己本地图片.
1 楼
haiyang08101
2011-10-09
很好!学习了...