You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Android Studio报错cannot find symbol method SetImageResource(int)求解决

修复ImageView切换图片的编译错误

嘿,这个问题其实是个很容易忽略的小细节——Java是严格区分大小写的编程语言,你这里刚好踩了这个坑!

错误原因

Android Studio提示的cannot find symbol method SetImageResource(int),本质是你把ImageView的方法名写错了:正确的方法名是setImageResource()(首字母为小写s),而你写成了大写的S。在Java中,大小写不同会被识别为完全不同的方法,所以编译器找不到你调用的SetImageResource。

修复后的完整代码

package com.kmsmartapps.test5;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {
    public void clickIM(View view) {
        ImageView image = (ImageView) findViewById(R.id.imview);
        // 把SetImageResource改成setImageResource(首字母小写)
        image.setImageResource(R.drawable.logo);
    }

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }
}

额外优化建议

为了让代码更高效,你可以把ImageView的初始化移到onCreate方法中,避免每次点击按钮都执行findViewById:

package com.kmsmartapps.test5;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;

public class MainActivity extends AppCompatActivity {
    private ImageView imageView;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        // 提前初始化ImageView
        imageView = findViewById(R.id.imview);
    }

    public void clickIM(View view) {
        imageView.setImageResource(R.drawable.logo);
    }
}

其他检查点

  • 确认R.drawable.logo确实存在于你的项目res/drawable(或对应分辨率的drawable目录)中,避免后续出现资源找不到的运行时错误
  • 如果升级到Android Studio 3.0后还有其他兼容问题,可以检查项目是否正确配置了支持库(不过这个问题和版本升级无关,纯粹是大小写拼写错误)

内容的提问来源于stack exchange,提问作者Kamel Mezni

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:21:07