こんにちは、私の Android アプリには、このアクティビティが Intent を使用して別のアクティビティから呼び出される listactivity があります。ListActivity の onCreate メソッドを呼び出した後、新しい AsynchTask を作成し、Web サービスを呼び出して、すべてのものを ArrayList データに入れます。 customArrayAdapter の getView を実装しようとすると、奇妙なことが起こります。リストの内容が表示されない場合や、スクロールすると表示される場合があります。カスタム アダプターの getView メソッドを次に示します。(レイアウト = テキストビュー + リストビュー)
class EntryDetailsAdapter extends ArrayAdapter<Entry>{
private ArrayList<Entry> entryDetails;
private Entry tempEntry;
public EntryDetailsAdapter(Context context, int textViewResourceId,
List<Entry> objects) {
super(context, textViewResourceId, objects);
// TODO Auto-generated constructor stub
entryDetails = (ArrayList<Entry>) objects;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
View mView = convertView;
if(mView == null){
LayoutInflater inflater = (LayoutInflater) getSystemService(Context.LAYOUT_INFLATER_SERVICE);
mView = inflater.inflate(R.layout.entry_rows, null);
}
tempEntry = entryDetails.get(position);
//data is fine but problem is while occur while showing data
if(tempEntry != null){
//get the textview from list row xml that i defined
TextView textView = (TextView) findViewById(R.id.entryRowTextView);
if(textView != null){
//i dont know why but this sometimes giving null so check
textView.setText(tempEntry.getEntryContent());
}
}
return mView;
}
}
[注] 問題はこの質問に似ているかもしれませんが、解決策が見つかりませんでした