zxd_72 2013-04-26 01:41 采纳率: 0%
浏览 932

如何修改动态列表的图像?

动态列表中包含一个 imageview 和一个 textview。我想在点击的时候改变指定位置的图像,如何实现?

public class CoverLetterAdaptor extends BaseAdapter
{
    String[] coverLetterItems;
    Context context;    
    private LayoutInflater mInflater;   
    int ht,wt;

public CoverLetterAdaptor(Context context,int ht,int wt, String[] coverLetterTitle)
{
    this.context = context;
    this.coverLetterItems = coverLetterTitle ;          
    this.ht = ht;
    this.wt = wt;
    mInflater = LayoutInflater.from(context);
}
public int getCount() {
    return coverLetterItems.length;
}
public Object getItem(int position) {
    return position;
}
public long getItemId(int position) {
    return position;
}
public View getView( final int position, View convertView, ViewGroup parent) 
{
    ViewHolder holder;
    if (convertView == null)
    {
        convertView = mInflater.inflate(R.layout.coverletteradaptor, null);     
        holder = new ViewHolder();

        holder.coverLetterTxt = (TextView) convertView.findViewById(R.id.coverLetterAdaptorTxt);
        holder.bgImageCCAdaptor = (ImageView)convertView.findViewById(R.id.bgimageCoverLetter);
        holder.bgimageCoverLetter = (ImageView)convertView.findViewById(R.id.bgimageCoverLetterr);
        holder.bgimageCoverLetter.setLayoutParams(new RelativeLayout.LayoutParams(wt, ht/7));       
        convertView.setTag(holder);
     }
    else                
        holder = (ViewHolder) convertView.getTag();
    holder.coverLetterTxt.setText(coverLetterItems[position]);
    return convertView;
} 
static class ViewHolder
{
    TextView coverLetterTxt;        
    ImageView bgImageCCAdaptor;
    ImageView bgimageCoverLetter;
}
}
  • 写回答

1条回答 默认 最新

  • ChatGPTᴼᴾᴱᴺᴬᴵ 2022-12-21 17:08
    关注

    ChatGPT尝试为您解答,仅供参考
    在这个类中,你可以在点击事件处理函数中改变指定位置的图像。

    你可以将点击事件处理函数添加到你的 getView 方法中,以便在点击视图时更新图像。 例如,你可以使用以下代码来设置点击事件处理函数:

    convertView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            // 更新指定位置的图像
            holder.bgimageCoverLetter.setImageResource(R.drawable.new_image);
        }
    });
    

    在这段代码中,holder.bgimageCoverLetter 是你想要更新的图像视图。setImageResource 方法用于设置图像视图的图像资源。

    你还可以在点击事件处理函数中访问当前视图的位置,使用这个位置来更新特定的图像。 例如:

    convertView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            // 更新特定位置的图像
            if (position == 2) {
                holder.bgimageCoverLetter.setImageResource(R.drawable.new_image);
            }
        }
    });
    

    在这段代码中,点击第三个视图时,将会更新图像视图。

    评论

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器