安卓imageview怎么实现点击事件后换一张图片,再点击换回原来图片这样循环

安卓imageview怎么实现点击事件后换一张图片,再点击换回原来图片这样循环,第1张

你只有两张图片要换吗?那直接硬编码不就好了。

把那个imageview写成static然后在借口匿名类里直接调用他自己的set方法。为了区别图片可以添加一个标志变量,比如为1的时候是第一张,为2的时候是第二张。

这写的啥?

private int index = 0// 获取下表

private ArrayList<Drawable>bms = new ArrayList<Drawable>()

private void getBitmapDate(ArrayList<Drawable>bms) {// 将图片数据插入数组,在oncreat中初始化

bms.add(getResources().getDrawable(R.drawable.icon))

bms.add(getResources().getDrawable(R.drawable.icon))

bms.add(getResources().getDrawable(R.drawable.icon))

bms.add(getResources().getDrawable(R.drawable.icon))

}

onclick里面的代码:

switch (v.getId()) {

case R.id.imageView1:

if (index >= bms.size())

index = 0

else

index++

ivUpShort.setImageDrawable(bms.get(index))

break

default:

break

}

在xml中设置imageview的src,路径要是正确的,不然找不到文件就不会显示,AndroidStudio使用的是mipmap路径

布局文件中建立一个linearlayout,设置为clickable,然后加入一个ImageView,这是布局文件

<LinearLayout

android:orientation="vertical"

android:layout_height="wrap_content"

android:clickable="true" >

<ImageView

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:id="@+id/img"

android:layout_gravity="center_horizontal"

android:layout_centerVertical="true"

android:src="@drawable/360"//这个是你的图标

/>

</LinearLayout>

然后在做一个布局文件,加入也是线性布局的,加入你上面的图标,最后写一个类,实现点击效果:

class ImageViewIndex implements OnTouchListener {

//360图标

@Override

public boolean onTouch(View view, MotionEvent event) {

if (event.getAction() == event.ACTION_DOWN) {

imageViewIndex.setImageResource(R.drawable.360)

intent.setClass(Activity.this, IndexActivity.class)

startActivity(intent)

}

return false

}

}

就好了

鉴于你这个问题,估计你是一个还没android入门的人建议你多看看书,基础要扎实,其实这些事很简单的。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/8007077.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-12
下一篇2023-04-12

发表评论

登录后才能评论

评论列表(0条)

    保存