所以我在一類的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