这让我非常疯狂,我不确定发生了什么。我在可点击的RelativeLayout 中有一个带有TextView 的xml 布局。
<RelativeLayout
android:id="@+id/bg_section"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
android:layout_marginTop="10dp"
android:background="@color/almost_black"
android:clickable="true"
android:onClick="goToBG"
android:padding="10dp" >
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_centerVertical="true"
android:text="Go To B.G."
android:textColor="@color/white"
android:textSize="20sp" />
<ImageView
android:id="@+id/bg_arrow"
android:layout_width="wrap_content"
android:layout_height="30dp"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="-10dp"
android:src="@drawable/arrow_icon" />
<TextView
android:id="@+id/current_bg_count"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_toLeftOf="@id/bg_arrow"
android:text="3"
android:textColor="@color/holo_blue"
android:textSize="22sp" />
</RelativeLayout>
现在在我的代码中,我尝试更新文本视图“current_bg_count”
private void updateBGCount(){
try{
RelativeLayout bgSection = (RelativeLayout) findViewById(R.id.bg_section);
TextView bgCountTV = (TextView) bgSection.getChildAt(2);
bgCountTV.setText(tempBG.size());
}
catch(Exception e){
e.printStackTrace();
Logger.d(TAG, "exception in updateBGCount");
}
}
这在我 setText 的行上给出了 ResourceNotFountException,尽管发现 RelativeLayout 没有问题。即使我尝试像这样通过 id 找到它:
TextView bgCountTV = (TextView) findViewById(R.id.current_bg_count)
bgCountTV.setText(tempBG.size());
它给出了同样的错误。布局中的所有其他视图都很容易找到并且更新得很好。只有这个 TextView 给了我这个问题。有谁知道问题是什么?