1

まず、XML なしでビューをインフレートすることは可能ですか?

説明は次のようなものです:
コーディングによってビュー階層を動的に生成しました。

相対レイアウトには 4 つの線形レイアウトが含まれます
-1st Linear Layout には Image View が含まれます
-2 番目の線形レイアウトにはサーフェス ビューが含まれます
-3 番目の線形レイアウトにはボタンが含まれます
-4 番目の線形レイアウトにはテキスト ボックスが含まれます

すべてのビュー/ビュー階層の生成に問題はありません (子ビューをデバッグおよび検査してテストしました)

しかし、それを setContent() として設定することはでき
ません。理由を確認してください)、つまり、R.Layout にアクセスできません。そのため、inflater.Inflate(R.Layout...) を使用できません。

メインの相対レイアウトをコンテンツとして設定すると、次のエラーが発生します。

12-16 11:32:03.653: E/AndroidRuntime(22564): java.lang.RuntimeException: Unable to start activity ComponentInfo{my.package.class}: android.content.res.Resources$NotFoundException: Resource ID #0x1d97b

誰でも何か考えがありますか?

----更新されたログ----
12-16 12:33:16.143: E/AndroidRuntime(25358): FATAL EXCEPTION: main 12-16 12:33:16.143: E/AndroidRuntime(25358): java.lang.RuntimeException: Unable to start activity ComponentInfo{my.package.class}: android.content.res.Resources$NotFoundException: Resource ID #0x1d97b 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2343) 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2395) 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.app.ActivityThread.access$600(ActivityThread.java:162) 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1364) 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.os.Handler.dispatchMessage(Handler.java:107) 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.os.Looper.loop(Looper.java:194) 12-16 12:33:16.143: E/AndroidRuntime(25358): at android.app.ActivityThread.main(ActivityThread.java:5371) 12-16 12:33:16.143: E/AndroidRuntime(25358): at java.lang.reflect.Method.invokeNative(Native Method) 12-16 12:33:16.143: E/AndroidRuntime(25358): at java.lang.reflect.Method.invoke(Method.java:525) 12-16 12:33:16.143: E/AndroidRuntime(25358): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:833) 12-16 12:33:16.143: E/AndroidRuntime(25358): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:600) 12-16 12:33:16.143: E/AndroidRuntime(25358): at dalvik.system.NativeStart.main(Native Method) 12-16 12:33:16.143: E/AndroidRuntime(25358): Caused by: android.content.res.Resources$NotFoundException: Resource ID #0x1d97b
もう少し理解するのに役立つことを願ってい

ます ---ビューを生成するアクティビティ クラスの Dropbox リンク ---
https://www.dropbox.com/s/vclymo0cs0zp360/ScannerActivity .java?dl=0

4

2 に答える 2

5

XML なしでビューを膨らませることは可能ですか?

いいえ。Android での「インフレーション」という用語の定義は、XML リソース ファイルを Java オブジェクトの対応するツリーに変換することです。レイアウト インフレーションは、XML レイアウト リソースを対応するオブジェクトのツリーに変換しViewます。

しかし、それを setContent() として設定することはできません

setContent()どのような方法を指しているのかわかりません。をViewのメイン コンテンツとして配置するにはActivity、 を使用しますsetContentView()

于 2014-12-15T22:58:32.210 に答える