Android -- 从 findViewById(R...) 分配的 SurfaceView 将不允许访问自定义字段
Posted
技术标签:
【中文标题】Android -- 从 findViewById(R...) 分配的 SurfaceView 将不允许访问自定义字段【英文标题】:Android -- SurfaceView assigned from findViewById(R...) won't allow access to custom fields 【发布时间】:2011-08-12 00:43:39 【问题描述】:我有一个程序,它可以工作。我试图让在 XML 资源中声明的 SurfaceView 之一可以在 Activity 类中访问。 surfaceview 分配得很好,并允许访问 SurfaceView 方法/元素,但不是我的自定义方法/元素。如何访问自定义元素?
公共类主扩展活动 SurfaceView 查看器; 公共无效 onCreate(...) ... //成功将对象分配给查看器 查看器 = (SurfaceView)findViewById(R.id.Viewer); 无效一些方法() 查看器.doSomethingRad(); //失败 ////////////// 公共类查看器扩展了 SurfaceView... …… ////////////Main.xml ... ~view class="com.ballroll.Viewer" android:layout_ android:layout_ android:id="@+id/查看者" android:text="查看器"~ ~/查看~ //不知道怎么逃跑'WTF?提前致谢!
【问题讨论】:
【参考方案1】:您将视图声明为 SurfaceView。你应该使用你的类名来声明它。
Viewer viewer;
public void onCreate(...)
...
//Successfully assigns object to viewer
viewer = (Viewer)findViewById(R.id.Viewer);
【讨论】:
以上是关于Android -- 从 findViewById(R...) 分配的 SurfaceView 将不允许访问自定义字段的主要内容,如果未能解决你的问题,请参考以下文章
Android -- 从 findViewById(R...) 分配的 SurfaceView 将不允许访问自定义字段
ViewPager 未从代码、android、eclipse 更新
Android:findViewById 给了我错误的指针?