没有马甲 2015-06-15 01:31 采纳率: 0%
浏览 4166

如何获取GridView或ListView中的每一个view

如题,我想在gridview中的某一个指定的view中设置一个抖动的动画,但我发现如果是这样写:
bankAdapter = new CustomGridAdapter(MainActivity.this, bankItems);
bankGrid.setAdapter(bankAdapter);

//动画
Animation shakeAnim = AnimationUtils.loadAnimation(MainActivity.this, R.anim.shake_x);
//获取gridview中的第2个view
RelativeLayout viewAnim =(RelativeLayout) bankGrid.getChildAt(2);

if (viewAnim !=null) {
ImageView img = (ImageView) viewAnim.findViewById(R.id.ItemImage) ;
img.startAnimation(shakeAnim);
}

    bankGrid.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {

            }

这时viewAnim的返回值是为null ,动画无法执行。
如果改为下面这样子:
bankAdapter = new CustomGridAdapter(MainActivity.this, bankItems);
    bankGrid.setAdapter(bankAdapter);           
    bankGrid.setOnItemClickListener(new OnItemClickListener() {

        @Override
        public void onItemClick(AdapterView<?> parent, View view,
                int position, long id) {            
            Animation shakeAnim = AnimationUtils.loadAnimation(MainActivity.this, R.anim.shake_x);
            RelativeLayout viewAnim =(RelativeLayout) bankGrid.getChildAt(2-bankGrid.getFirstVisiblePosition());                
            if (viewAnim !=null) {
                ImageView img = (ImageView) viewAnim.findViewById(R.id.ItemImage) ;
                img.startAnimation(shakeAnim);
            }
        }

        那么在点击gridview中任意一项之后,第二个view就可以实现抖动的动画效果。
        但是,我需要的是在没有点击gridview的情况下,即一进入应用,gridview中第二个view(按钮)就立即开始抖动,而不是监听点击事件后才执行。求问怎么才能实现??
  • 写回答

1条回答 默认 最新

  • qq_22202859 2015-06-15 01:49
    关注

    写到bankAdapter中的getView()方法中
    if(position=2){
    要写的动画
    }

    评论

报告相同问题?

悬赏问题

  • ¥15 C#读写EXCEL文件,不同编译
  • ¥15 如何提取csv文件中需要的列,将其整合为一篇完整文档,并进行jieba分词(语言-python)
  • ¥15 MapReduce结果输出到HBase,一直连接不上MySQL
  • ¥15 扩散模型sd.webui使用时报错“Nonetype”
  • ¥15 stm32流水灯+呼吸灯+外部中断按键
  • ¥15 将二维数组,按照假设的规定,如0/1/0 == "4",把对应列位置写成一个字符并打印输出该字符
  • ¥15 NX MCD仿真与博途通讯不了啥情况
  • ¥15 win11家庭中文版安装docker遇到Hyper-V启用失败解决办法整理
  • ¥15 gradio的web端页面格式不对的问题
  • ¥15 求大家看看Nonce如何配置