設計要件は、リストビューがあり、リストビューの項目にボタンがあり、ボタンを押して、ポップアップウィンドウをボタンの下ではなく常に上に表示することです。
Android では、「showAsDropDown」を使用します。これは、ボタン (ビューまたはアンカー) の下部にあるポップアップ ウィンドウの既定の表示です。ただし、下部が表示されない場合、ポップアップウィンドウはボタン (ビューまたはアンカー) の上に表示されます。
onTop = (displayFrame.bottom - mScreenLocation[1] - anchor.getHeight() - yoff) <(mScreenLocation[1] - yoff - displayFrame.top);
そこで、この点を踏まえて、「setSelectionFromTop」でボタンの項目を移動させるには、判定がボタンの下に表示されるほど効果がないようにしましょう。</p>
Android 4.0.3 では、アイテムが移動し、ポップアップ ウィンドウに新しい位置と上記が表示されますが、Android 2.2 では、ポップアップ ウィンドウは移動後の位置ではなく、プレスの場所を表示します。</p>
boolean onTop = (displayFrame.bottom - mScreenLocation[1] - v.getHeight() - 0) < (mScreenLocation[1] - 0 - displayFrame.top);
if(!onTop){
mListMain.setSelectionFromTop(mListMain.getPositionForView(v),(displayFrame.bottom - v.getHeight() + displayFrame.top) / 2 );
}
私を助けることができます、それを解決する方法?!. T_T