所以我在一类的getter函数调用ItemEnergyGreen:NullPointerExeption上getTextView在Android的
public TextView getTextView(FrameLayout fl) {
textView = (TextView) fl.findViewById(R.id.textview_energyOrange_quantity);
return textView;
}
我现在想打电话从另一类这个梅索德:
//Item Energy Green
itemEnergyGreenFrameLayout = (FrameLayout) inflater.inflate(R.layout.item_energy_green_layout, null, false);
itemEnergyGreenQuantityTextView = itemEnergyGreen.getTextView(itemEnergyGreenFrameLayout);
btn_ItemEnergyGreen = (ImageButton) itemEnergyGreenFrameLayout.findViewById(R.id.btn_energyGreenItem_use);
btn_ItemEnergyGreen.setOnClickListener(this);
函数调用在第2行中,我将frameLayout传递给getter函数,但我的ItemEnergyGreen类中的textView始终为NULL。
错误发生时,我想打电话的setText对我的看法:
public void itemEnergyGreenUpdateNumber() {
int quantity = itemEnergyGreen.getQuantity();
String qstring = String.valueOf(quantity);
itemEnergyGreenQuantityTextView.setText(qstring);
}
这是XML-的FrameLayout即得到膨胀:
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ItemEnergyGreenFrameLayout"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ImageButton
android:id="@+id/btn_energyGreenItem_use"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:scaleType="fitXY"
android:src="@drawable/item_energydrink_green" >
</ImageButton>
<TextView
android:id="@+id/textview_energyGreen_quantity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
android:background="#F00"
android:clickable="false"
android:padding="2dp"
android:textColor="#FFF"
android:textStyle="bold" >
</TextView>
</FrameLayout>
这是为什么?
PS。在调用getter函数的地方,itemEnergyGreen对象已经被初始化。
谢谢你的回答,并且很抱歉如果这是一个转储问题,但我会为此疯狂。
你有没有文本设置为textview之前,你打电话?像在你的XML?甚至textview.settext?或者它是空的? – La5t5tarfighter
向你展示XML和日志错误请问 – Saggy
你确定'TextView'属于'item_energy_green_layout.xml'.Post xml – Raghunandan