5

これは、レイアウトXMLファイルで発生するエラーです。

error!
NotFoundException: null
Exception details are logged in Window > Show View > Error Log
The following classes could not be found:
- TextView (Change to android.widget.TextView, Fix Build Path, Edit XML)

これは、EclipseでSDKツールを更新した後に発生しました。ただし、コードをコンパイルすることはできます。レイアウトのグラフィカルな部分が表示されません。

最近、RootToolsライブラリも追加しましたが、それも原因でしょうか?

ありがとうございました!

4

5 に答える 5

6

私も同じ問題を抱えていました。そして、それは非常に奇妙なことであることが判明しました。私のstrings.xmlファイルに行がありました

<string name="email_seperator_char">\@</string>

そして、これが問題を引き起こしていました。@記号にエスケープ文字を使用しても、SDKの更新後にプレビューが機能しませんでした。

解決策:その前にスペースを追加しただけで、うまくいきました。

<string name="email_seperator_char"> \@</string>

私はそれが奇妙であり、一部のアプリがその前にスペースを置くことは受け入れられないかもしれないことを知っています。しかし、それは私のアプリにとっては問題ありませんでした。お役に立てれば。

また、デザインモードでは、グラフィックレイアウトで、新しいアイコン(androidアイコン)が表示されます。クリックして、最小8つを選択します。

于 2012-09-08T14:10:28.620 に答える
1

それがあなたの場合に役立つかどうかはわかりませんが、私の問題は何であるかを知りました。古いAndroidデバイスをサポートするために、プロジェクトビルドターゲットを以前のAPIレベル8(Android 2.2)の値からAPIレベル7(Android 2.1)に下げました。

2.1レイアウトレンダラーに問題がある可能性があります。TextViewのプロパティでクラッシュし続けましたandroid:textAppearance="?android:attr/textAppearanceMedium"。削除してもレンダリングは機能していましたが、見た目がおかしい(背景が灰色、テキストが小さい)。APIレベルを元に戻すと、レイアウトエディターがすぐに修正されました。

これを変更するには、プロジェクトのプロパティに移動し、右側で[ Android ]を選択してから、[プロジェクトビルドターゲット]の下の目的のAPIレベルの横にあるチェックボックスをオンにします。

于 2012-07-16T11:29:59.833 に答える
0

ほんの数分前に同じ問題が発生しました。APIレベルを下げて、レイアウトエディタ画面のアンドリッドグリーンアイコンを押し、ドロップダウンメニューで[API7]を選択してください。うまくいくと思います。

于 2012-09-19T10:47:30.013 に答える
0

私も同様の問題を抱えています。これらの投稿をいくつか読んだ後、Android4.0.3のレイアウトレンダラーにおそらくバグがあることがわかりました。プロジェクトのすべての部分がAndroid4.0.3およびSDK15に設定されている場合でも、エラーメッセージが表示されます(ROOT例外の詳細は[ウィンドウ]>[ビューの表示]>[エラーログ]に記録されます)。

レイアウトレンダラーをAndroid2.2に設定し、他のすべてをAndroid 4.0.3、SDK 15に設定したままにすると、すべて正常に機能しているように見えます。

これがお役に立てば幸いです。

于 2013-04-17T15:43:48.967 に答える
0

TextViewに問題があります

ある時私はこれを書いたので問題が発生します

android:textAppearance="@android:attr/textAppearanceLarge"

Eclipseはそれが間違っていることを認識できませんが、デザインビューがクラッシュします。気付いたとき、@を?に変更します。

android:textAppearance="?android:attr/textAppearanceLarge"

その後、すべてが正常になります

于 2013-07-23T16:17:39.737 に答える