如何让ImageView点击后换成另一张图片 ?(不是说点击时换成其他图片,点击恢复后变为原来)。点之前是A图片,点之后变为B图片。
11 个解决方案
#1
我有思路,我先去试下,成功再告诉你
#2
如果说点击时换成其他图片,点击恢复后变为原来。可以直接读取selector配置文件,但这只是满足了Button的效果,点击结束后,会恢复到原来的状态
#3
给ImageView设置点击监听,当点击了,换图片
代码:
代码:
public class Test extends Activity {
ImageView iv;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv = (ImageView)findViewById(R.id.imageView1);
iv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == iv)
iv.setImageDrawable(getResources().getDrawable(R.drawable.png1));
}
});
}
#4
点击事件下大概就是这样
boolean change;
if(true)
{
setImageResource(R.drawable.A);
change = !change;
}
else
{
setImageResource(R.drawable.A);
change = !change;
}
#5
如果要有点击就变化的效果。。
加个判断条件吧。
代码:
加个判断条件吧。
代码:
public class Test extends Activity {
ImageView iv;
boolean isChanged = false;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv = (ImageView)findViewById(R.id.imageView1);
iv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == iv)
{
if(isChanged){
iv.setImageDrawable(getResources().getDrawable(R.drawable.icon));
}else
{
iv.setImageDrawable(getResources().getDrawable(R.drawable.png1));
}
isChanged = !isChanged;
}
}
});
}
}
#6
对哦 就这样哦 想复杂了 谢啦
#7
正解
#8
很简单的件事...做过动态生成ImageView的基本都会吧...
#9
setImageDrawable这样就行
#10
重设下图片就可以了。。楼主。
#11
学习了
#1
我有思路,我先去试下,成功再告诉你
#2
如果说点击时换成其他图片,点击恢复后变为原来。可以直接读取selector配置文件,但这只是满足了Button的效果,点击结束后,会恢复到原来的状态
#3
给ImageView设置点击监听,当点击了,换图片
代码:
代码:
public class Test extends Activity {
ImageView iv;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv = (ImageView)findViewById(R.id.imageView1);
iv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == iv)
iv.setImageDrawable(getResources().getDrawable(R.drawable.png1));
}
});
}
#4
点击事件下大概就是这样
boolean change;
if(true)
{
setImageResource(R.drawable.A);
change = !change;
}
else
{
setImageResource(R.drawable.A);
change = !change;
}
#5
如果要有点击就变化的效果。。
加个判断条件吧。
代码:
加个判断条件吧。
代码:
public class Test extends Activity {
ImageView iv;
boolean isChanged = false;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
iv = (ImageView)findViewById(R.id.imageView1);
iv.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if(v == iv)
{
if(isChanged){
iv.setImageDrawable(getResources().getDrawable(R.drawable.icon));
}else
{
iv.setImageDrawable(getResources().getDrawable(R.drawable.png1));
}
isChanged = !isChanged;
}
}
});
}
}
#6
对哦 就这样哦 想复杂了 谢啦
#7
正解
#8
很简单的件事...做过动态生成ImageView的基本都会吧...
#9
setImageDrawable这样就行
#10
重设下图片就可以了。。楼主。
#11
学习了