こんにちは、理解できない非常に奇妙な問題を見つけました.誰かが私を助けてくれることを願っています:
すべてのビューが画面上に配置されている場合、私のリストは見栄えがします。画面が小さくなる (またはリストが長くなる) とすぐに、エントリが本来あるべきビューとは異なるビューになることがあります。この問題は、エントリがウィンドウの外に出るように上下にスクロールすることで制限できます。
異なるレイアウト ファイルを持つ異なるエントリ タイプのリストビューがあります。これは、表示されるレイアウトを決定するメソッドです。
public View getView(int position, View view, ViewGroup parent) {
NavigationListEntry i = entries.get(position);
View v = view;
if (v == null)
switch(i.Type) {
case ACTIVE_ENTRY:
v = inflater.inflate(R.layout.list_nav_row_active, null);
break;
case HEADER:
v = inflater.inflate(R.layout.list_nav_row_header, null);
break;
...
default:
v = inflater.inflate(R.layout.list_nav_row_active, null);
break;
}
}
なぜこれが発生するのか、何か考えはありますか?
/edit 「if (v == null)」を削除するだけでうまくいくようです