java - 无法解析符号,android studio

标签 java android android-support-library android-appcompat androidx

这是我第一次使用android studio,但出现错误

"Cannot resolve symbol AppCompatActivity", and other symbol errors.

enter image description here

我该如何解决?我试过向 gradle 添加东西,但没有任何效果。还尝试执行“使缓存无效/重新启动”,但它也没有用。

import android.Manifest;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.ActivityCompat;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;

public class MainActivity extends AppCompatActivity {
    private Button button;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        button = (Button) findViewById(R.id.buttonCall);

        button.setOnClickListener(new View.OnClickListener() {
            public void onClick(View arg0) {
                Intent callIntent = new Intent(Intent.ACTION_CALL);
                callIntent.setData(Uri.parse("tel:1566"));

                if (ActivityCompat.checkSelfPermission(MainActivity.this,
                        Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
                    return;
                }
                startActivity(callIntent);
            }
        });


    }
}

这里是gradle文件中的依赖

dependencies {
    compile 'com.android.support:appcompat-v7'
    implementation fileTree(dir: 'libs', include: ['*.jar'])
    implementation 'androidx.appcompat:appcompat:1.0.2'
    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'androidx.test:runner:1.2.0'
    androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}

最佳答案

因为您正在使用 AndroidX 依赖项

androidx.appcompat:appcompat:1.0.2

然后在 MainActivity 中导入

import android.support.v7.app.AppCompatActivity;

删除它并导入 androidx AppCompatActivity 然后错误解决。

额外的

此外,请将 com.google.android.material:material:1.0.0 添加到 build.gradle

关于java - 无法解析符号,android studio,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57218678/

相关文章:

Java:如何对 3d 数组的一部分进行排序?

java - 在类构造函数中实例化 ArrayList

android - 没有硬编码 IP 地址的 KSOAP2 连接

android - 400 : An internal consistency error has occurred: 406: No access token: cannot retrieve account

android - 自定义选项卡支持库

java - 如何实现自定义JSF组件来绘制图表?

java - LMAX 颠覆器如何用于股票市场?

android - 如何在按钮上方显示文本?

android - 借助支持库 (23.4.0),无法在 Android API 19 中正确加载 Vector Drawable

android - fitsSystemWindows 被 ConstraintLayout 忽略