2014-02-18 12 views
0

"R"을 사용하여 레이아웃, 이미지 등을 설정하는 동안 문제가 있습니다. 아래는이 오류를 나타내는 코드입니다.'R'기호를 해결할 수 없습니다

"컴파일 할 코드 :"를 "API 19"로 선택하면 동일한 코드가 제대로 작동합니다. 내 코드가 내 모바일 2.3.3에서 실행되기를 원합니다.

Google에서 검색 한 결과, 많은 사람들이이 문제를 발견했습니다. 나는 "compileSdkVersion 19"를 선택한다면 어떤 솔루션이 날

package com.example.testfor23; 

import android.support.v7.app.ActionBarActivity; 
import android.support.v7.app.ActionBar; 
import android.support.v4.app.Fragment; 
import android.os.Bundle; 
import android.view.LayoutInflater; 
import android.view.Menu; 
import android.view.MenuItem; 
import android.view.View; 
import android.view.ViewGroup; 
import android.os.Build; 

public class MainActivity extends ActionBarActivity { 

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

     if (savedInstanceState == null) { 
      getSupportFragmentManager().beginTransaction() 
        .add(R.id.container, new PlaceholderFragment()) 
        .commit(); 
     } 
    } 
} 

을 위해 작동하지는 아래의 다음 완벽하게 잘 작동 매니페스트 파일

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.testfor231" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk 
     android:minSdkVersion="7" 
     android:targetSdkVersion="19" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity 
      android:name="com.example.testfor231.MainActivity" 
      android:label="@string/app_name" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 

입니다.

android { 
    compileSdkVersion 10 
    buildToolsVersion "19.0.1" 

    defaultConfig { 
     minSdkVersion 9 
     targetSdkVersion 9 
    } 
+0

리소스 파일을 정리하고 정리하고 빌드하고 다시 작성하십시오. – Raghunandan

+0

이전에이 문제가 있었지만, 현재 답변을 모두 따라 가면 할 수있는 일은 훨씬 많습니다. . 최악의 경우 최악의 경우 오류가 사라질 때까지 XML 파일을 제거하십시오. – AStupidNoob

+0

res/layouts/activity_main.xml 코드도 함께 표시하십시오. –

답변

0

프로젝트에 2.3.3과 호환되지 않는 리소스가 있습니다. 문제를 해결하면 문제가되지 않습니다.

0

당신은 자바 파일의 R 오류를 수정하기 위해

import com.example.testfor23.R; 

를 추가해야합니다. 그래도 오류가 발생하면 XML 파일 중 하나에 오류가 있으며 오류가 무엇인지 찾아야합니다. 프로젝트 청소도 도움이 될 수 있습니다. 또한 대상을 project.properties에 올바르게 설정해야합니다. 귀하의 경우, 그것은해야한다 : 그들은 방법, 수업의 대부분을 포함하고 새로 할 기능을하지 않기 때문에

target=android-19 

일반적으로, 안드로이드의 이전 버전을 지원하는 것은 문제가있다. 이는 API 10보다 낮은 버전에서 특히 두드러집니다.

Support Libraries은 반드시 이러한 레거시 버전을 지원해야하는 경우 사용할 수 있습니다.

here에서 볼 수 있듯이 현재 1.3 %의 기기에서만 API10 (진저 브레드 2.3.3)보다 오래된 버전이 실행됩니다. 따라서 다음과 같이 설정하는 것이 좋습니다.

android:minSdkVersion="10" 

이러한 장치를 지원하면 추가적으로 발생하는 문제가 발생하는 문제보다 훨씬 큽니다.

0

xml에 오류가있을 수 있으며 sintax 오류 일 수 있습니다. 호환되지 않는 리소스는 res-directory에 중복을 시도하지 마십시오. 당신이 그것을 가져 오지 않는 경우에, 당신은 플랫폼에서 자원을 다스 려하고 있기 때문에 당신이 (이 경우) 수입 havent 한 때문에 가끔 오류가 발생, 프로젝트에서

import com.example.testfor23.R; 

을 R을 가져옵니다.

+0

나는 다른 XML 파일을 가지고 있지 않다. 단지 android studio를 통해 새로운 프로젝트를 만들었을 뿐이다. 단지 오류가있다. "import com.example.testfor23.R;"을 추가 할 수 없으며 같은 오류가 발생한다. – Sankarlal

+0

프로젝트에서 R을 가져 오면 프로젝트에서 리소스에 액세스 할 수 있습니다.이 경우에는 import com.example.testfor231.R; –

+0

@ user3319315는 false입니다. 코드 : setContentView (R.layout.activity_main); –

관련 문제