
把那个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入门的人建议你多看看书,基础要扎实,其实这些事很简单的。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)