在Android中不使用XML来扩展视图

aka*_*vat 1 xml android android-inflate android-runtime

首先,请任何人可以告诉我是否可以在没有XML的情况下充气视图?

描述是这样的:
我通过编码动态生成了一个视图层次结构

Relative layout contain 4 Linear layouts
-1st Linear Layout contain Image View
-2nd Linear Layout contain surface view
-3rd Linear Layout contain Button
-4th Linear Layout contain Text Box

并且生成所有视图/视图层次结构没有问题(我通过调试和检查子视图进行测试)

但是我无法将其设置为setContent()
因为我没有XML而且不允许使用XML(不是确定为什么),即我无法访问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

Com*_*are 5

没有XML可以膨胀视图吗?

否.Android中术语"通胀" 的定义是将XML资源文件转换为相应的Java对象树.布局膨胀将XML布局资源转换为对应的View对象树.

但我无法将其设置为setContent()

我不知道setContent()你指的是什么方法.把一个View作为主要内容Activity,使用setContentView().