を使用してエラー膨らまクラス
public void onWindowFocusChanged(boolean hasFocus) {
...
loadBalanceTable(inThePast, inTheFuture);
...
}
private void loadBalanceTable(Calendar startDate, Calendar endDate) {
AsyncBalanceLoader asyncBalanceLoader = new AsyncBalanceLoader(getApplicationContext(), this);
asyncBalanceLoader.execute(startDate, endDate);
}
AsyncBalanceLoader.java
public class AsyncBalanceLoader extends AsyncTask<Calendar, Integer, ArrayList<Balance>> {
private Context context;
private AppCompatActivity activity;
private ListView balanceView;
public AsyncBalanceLoader(Context ctx, AppCompatActivity act) {
context = ctx;
activity = act;
}
@Override
protected ArrayList<Balance> doInBackground(Calendar... date) {
...
ArrayList<Balance> arrayListBalance = new ArrayList<Balance>();
...
return arrayListBalance;
}
@Override
protected void onPostExecute(ArrayList<Balance> arrayListBalance) {
BalanceArrayAdapter balanceArrayAdapter = new BalanceArrayAdapter(context, arrayListBalance);
balanceView.setAdapter(balanceArrayAdapter);
}
}
上
...
android.view.InflateException: Binary XML file line #9: Binary XML file line #9: Error inflating class <unknown>
Caused by: android.view.InflateException: Binary XML file line #9: Error inflating class <unknown>
Caused by: java.lang.reflect.InvocationTargetException
...
を
BalanceArrayAdapter.java
public class BalanceArrayAdapter extends ArrayAdapter {
public BalanceArrayAdapter(Context context, ArrayList<Balance> balance) {
super(context, 0, balance);
}
@NonNull
@Override
public View getView(int position, View convertView, ViewGroup parent) {
...
if (convertView == null) {
convertView = LayoutInflater.from(getContext()).inflate(
R.layout.single_balance_line, parent, false);
}
...
return convertView;
}
}
問題は、このすべては、ユーザーインターフェイススレッドで行われていたとき、私は何の問題も戻って持っていなかったときBalanceArrayAdapter.javaをライン
convertView = LayoutInflater.from(getContext()).inflate(
R.layout.single_balance_line, parent, false);
に表示されます。
何が起こっているかに関するアイデアはありますか? 事前に感謝します!