1

昨日、私のプロジェクトはうまく構築され、実行されていました。今日、Eclipseは私のカスタム属性を認識しなくなったと判断しました。これを引き起こすような変更をしたことは考えられません。カスタム属性でいっぱいの約2ダースのXMLレイアウトがありますが、それらのいずれも認識しません。レイアウトの1つ(res / layout)は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
                  xmlns:aes="http://schemas.android.com/apk/res/com.aes.androidapp"
                  android:title="@string/ffour_analog_in_1">
    <com.aes.androidapp.IntPref android:title="@string/ffour_calibration_offset"
                                android:summary="@string/ffour_calibration_offset_sum"
                                android:key="ffour_ain1_calibration_offset"
                                android:defaultValue="0"
                                android:digits="-1234567890"
                                android:gravity="right"
                                android:inputType="numberSigned"
                                aes:range="-19999:30000"/>

    <com.aes.androidapp.IntPref android:title="@string/ffour_filter_time"
                                android:summary="@string/ffour_filter_time_sum"
                                android:key="ffour_ain1_filter_time"
                                android:defaultValue="0"
                                android:digits="-1234567890"
                                android:gravity="right"
                                android:inputType="numberSigned"
                                aes:range="-600:600"/>
</PreferenceScreen>

これが私の属性ファイル(res / values / attrs.xml)です:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="IntPref">
        <attr name="range" format="string" />
        <attr name="condition" format="string" />
    </declare-styleable>
</resources>

XMLファイルにエラーがあると見なされているため、Rが生成されていないため、IntPref.javaにも問題があります。私は過去8時間、これで髪を引き裂いてきましたが、間違ったことを何も見ることができません。助言がありますか?

4

3 に答える 3

0

eclipseを再起動して、修正されるかどうかを確認してください。

于 2012-08-23T20:22:56.533 に答える
0

私は同様の問題を抱えていました。そこでは、Eclipseはそれらをandroidxmlレイアウトとして認識しません。レイアウトフォルダー/new/ other / AndroidXmlレイアウトファイルを右クリックして再作成し、レイアウトをコピーして新しいレイアウトに貼り付ける必要がありました。

古いものを削除または保存し、プロジェクトメニューからプロジェクトをクリーンアップします。

また、アクティビティの上部でインポートを再確認する必要があります。インポートにandroid.Rへの参照が1つある場合は、残りがandroidシステムリソースからのものであると想定されます。

于 2012-08-23T20:24:54.770 に答える
0

問題が何であるかを追跡するのにほぼ1週間かかりましたが、私はついにそれを見つけました:

どういうわけか、マニフェストのパッケージ名をうっかり変更してしまいました。

全員の一般的なデバッグのヒントとして、これを追跡するのに役立った理由を説明します。この問題が発生した日またはその前後に、コミットで変更されたファイル(プロジェクト全体がGitHubにあります)を調べました。類似のパッケージのパッケージ名を含め、類似のプロジェクトのマニフェストの大部分がこのプロジェクトにコピーされた1つのコミットに気づきました。したがって、このプロジェクトのマニフェストでパッケージ名がどのように変更されたか、したがって、属性をそのようにした問題は認識されなくなりました。これは、発生する可能性が非常に低いため、誰も発生しないような問題のようですが、万が一発生した場合に備えて、私の問題に対する答えはそれでした。

于 2012-08-29T14:17:31.800 に答える