我做了一个类ShowWeight
扩展LinearLayout
,它有两个自定义视图作为内部类。我通过 main.xml 中的 XML 标记使用此类:
<org.test.ShowWeight android:id="@+id/sw"..................../>
ShowWeight 类中有两个公共变量,它们的变化值需要在主活动中捕获,main.xml
用作其视图。
我该怎么做呢?我在主要活动中尝试了这个:
ShowWeight sw=(ShowWeight)this.findViewById(R.id.sw);
Log.d("test",sw.getContentDescription().toString());
这在 showWeight 类中:
this.setContentDescription(/*required value */);
这导致了一个NullPointerException
.
不胜感激一些建议(数据库,静态变量,不是一个选项)
更新:
不幸的是,我不允许发布任何代码,如果我看起来含糊不清,我深表歉意,但我确信该ShowWeight
课程没有更改任何可能导致问题的内容。
我通过 XML 标记添加到 main.xml 视图中的 ShowWeight 类看起来很好并且功能正常。
当我ShowWeight sw=(ShowWeight)this.findViewById(R.id.sw);
在 Main Activity 中使用然后 Toast 或打印 ShowWeight 我得到 'null' 。setContentDescription(),getContentDescription()
也不应该抛出错误,因为我在 ShowWeight 的 XML 标记中给出了默认的 contentDescription 。