2012-04-11 3 views
9

私はAndroidアプリのいくつかのシンプルな設定を設定しようとしていますが、「xmlは解決できないか、フィールドではありません。私はきれいにし、リフレッシュし、日食を再開し、ジグを踊った - しかし、私はエラーを振ることはできません。私は間違って何をしていますか?R.xml.preferencesが見つかりません?

あるpreferences.xmlファイル:

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

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 

    <PreferenceCategory 
     android:title="Dev options"> 

     <CheckBoxPreference 
      android:key="devtools" 
      android:title="Enable clearing user" 
      android:summary="Enable clearing user" /> 

    </PreferenceCategory> 

</PreferenceScreen> 

Javaクラスファイル:任意の助け

package com.myapp.prototype; 

import android.os.Bundle; 
import android.preference.PreferenceFragment; 

public class GCPreferencesActivity extends PreferenceFragment { 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     // Load preferences from XML resource 
     addPreferencesFromResource(R.xml.preferences); // error on this line ?? 
    } 
} 

感謝。

+4

環境設定ファイルはどこにありますか?それは '/res/xml/preferences.xml'でなければなりません。 –

+6

およびimport com.myapp.prototype.R; –

+0

ロジャー、ありがとう。 – gcl1

答えて

16

私はあなたがインポートを逃したと思います(コメントのVincentによると)。あなたが追加する必要があります:

import com.myapp.prototype.R; 
エラーはまた、あなたのコード内に置く場合に表示さ

:Rが解決されているため、紛らわしいですが、もちろん、(あなたはXMLファイルで定義された属性を持っていない

import android.R; 

それは良いRじゃない!)。

+1

ええ、私はヴィンセントの答えの後、これをコメントで解決しました。私はちょうど間違ったディレクトリ(res/xmlの代わりにres/layoutの下にある)にpreferences.xmlを持っていました。フォローアップありがとう。 – gcl1

+0

同じ問題が発生しました。インポートステートメントを修正し、設定ファイルを配置すると、http://developer.android.com/guide/topics/ui/settings.html#DefiningPrefsのようになります。 –

4

res/ディレクトリ内にres/xmlという名前のフォルダがあり、その中に.xmlというファイルが必要です。

0

将来の訪問者のため: 私は同じ問題がありました。私がlynda.comから行ったビデオの1つに、フォルダXMLがない場合は、ファイル名.xmlでフォルダXMLが作成されるということです。しかしそれはそれが説明された方法で起こるのではない。私は手動で "RES"フォルダの下に "XML"と呼ばれるフォルダを作成し、そのXMLファイルをドラッグしてエラーを消さなければなりませんでした。

0

私は別のプロジェクトからXMLをコピー/貼り付けたので問題がありました。 File => new => Android xmlでプロジェクトにxmlを作成し、作成したXMLに他のプロジェクトのXMLコードをコピーしてコピーします。

1

これは古い質問ですが、私の答えは将来の視聴者に役立つ可能性があります。私は同じ問題を抱えていた、と私は間違ったRクラスをインポートしていたので、それは:

import android.R 

あなたがあなた自身のプロジェクトの生成されたRクラスをインポートする必要があります。

import your.full.package.name.R 

そしてもちろん、あなたが持っている必要がありますres/xml/preferences.xmlファイルを開きます。