我正在尝试将 TextView 动态添加到 LinearLayout,但出现错误并且不知道如何修复它:
03-19 16:25:07.057: ERROR/AndroidRuntime(16910): FATAL EXCEPTION: main
android.view.InflateException: Binary XML file line #3: Error inflating class <unknown>
at android.view.LayoutInflater.createView(LayoutInflater.java:613)
at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
at android.view.LayoutInflater.onCreateView(LayoutInflater.java:660)
at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:685)
at android.view.LayoutInflater.inflate(LayoutInflater.java:466)
at android.view.LayoutInflater.inflate(LayoutInflater.java:396)
at android.view.LayoutInflater.inflate(LayoutInflater.java:352)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:215)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
at com.fincalc.financialcalculator.MainActivity.simulateDebtLifeSpan(MainActivity.java:220)
这是被引用的 XML 布局文件:
<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" />
我解决这个问题的代码:
public void simulateDebtLifeSpan(CreditCard card){
LinearLayout ll = (LinearLayout)getLayoutInflater().inflate(R.layout.simulatedminimumpayments,null);
if (card.balance>0){
-line 215- TextView sim = (TextView)getLayoutInflater().inflate(R.layout.paymentrow,null);
double newBalance = card.getBalance()-card.getMinimumPayment(card.getBalance());
sim.setText("Starting Balance: " + card.getBalance() + " Minimum Payment: " + card.getMinimumPayment(actBalance) + " New Balance: " + newBalance);
ll.addView(sim);
card.setBalance(newBalance);
simulateDebtLifeSpan(card);
return;
}else {
setContentView(R.layout.simulatedminimumpayments);
return;
}
}
充气机让我很困惑我仍然有类似的代码可以充气表格行,然后将它们添加到工作正常的表格布局中:/有人可以帮我理解我做错了什么吗?