Android StudioでRが赤く表示され、"cannot resolve symbol R"というエラーメッセージが表示されますが、ビルドは成功します。

私がAndroid Studioで作成しようとしたすべてのプロジェクトで、Rを使用している箇所はすべて赤でマークされ、"cannot resolve symbol Rquot;というエラーメッセージが表示されますが、コンパイルは成功し、アプリケーションは実行されます。しかし、コンパイルは成功し、アプリケーションは実行されます。これは、自動補完がブロックされ、コード全体に巨大な赤い波線が表示されるので、本当に困ったものです。

Android Studio 1.7.0を使用しており、デフォルトの設定でプロジェクトを作成しています。スクリーンショットを添付します。

.

これは私の build.gradle です。

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile files('libs/android-support-v4.jar')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 7
        targetSdkVersion 16
    }
}

これは、プロジェクトの構造がどうなっているかを示しています。

.

これを修正する方法はありますか?

Android studioでは、いくつかの理由により、エディタ用とコンパイラ用で異なる設定を使用しています。コンパイラで動作するならば、それは良いことです。エディタで動作しない場合。(未解決のファイルを見てしまう)。

プロジェクトのソースにいくつかのディレクトリを追加する必要があります。例えば、すべてのリソースは"source"としてマークされなければなりません。

ファイル->プロジェクトの構造

モジュールを選択し、プロジェクトを選択します。そして、sourcesタブを選択します。右側にあるリソースディレクトリを探し、青い "source"ボタンをクリックします。すべてを閉じれば、動作するはずです。

また、次のことを確認してください。

また、build/source/r/debugもソースであることを確認する必要があります。私の場合、すべての build/source/*/debug がソースとしてマークされています。

メインモジュール .iml

<?xml version="1.0" encoding="UTF-8"?>






































































プロジェクトのiml

<?xml version="1.0" encoding="UTF-8"?>

















黒魔術

これについてはよくわかりませんが、何も変わらないはずなのに動くと聞きました。R`を必要とするすべての行をコメントアウトした後、プロジェクトをコンパイルして保存してみてください。その後、すべてが赤くなっていないときにそれらを戻してみてください。不思議なのは、ビルドやソースが生成されないことです。

また、この質問では、"compiler use external build&quot.をチェックすることを提案しています。

https://stackoverflow.com/questions/16622515/android-studio-dont-generate-r-java-for-my-import-project

サイドノート

また、あなたのJavaコードには、import android.r;がないことを確認してください。import android.r;`がないことも確認してください。あなたが示したものからすると、すべて順調に見えます。ただ、ビルド/ソースが作成されていないのが不思議です。例えば、私はbuild/apkを持っていません。もしかしたら、リリースモードになっていて、それらのディレクトリが作成されていないのかもしれません。

解説 (5)
ソリューション

もっと良い方法が見つかるまでの一時的な解決策です。

1.1. Everythingを使って、R.javaがどこで作られているかを調べます。私の場合は C:GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)GRAM FILES (x86)

2.Project ビューでモジュールをクリックし、F4 を押します。警告は無視してください。

3.Add Content Root"をクリックし、前述のフォルダを選択します。青色で表示されていることを確認してください(ソースとして)。

これをやった後、突然、すべての警告がなくなりました。問題は、他の人と共同作業をしている場合、フォルダ名がそれぞれのマシンで異なるので、同期の際には注意が必要です。

解説 (3)

数日前にこのバグが発生したので、Android Studioを再インストールするまでいろいろ探してみました。私の場合はうまくいきました。

解説 (2)