2015-04-24 1 views
0

вот мой кодКак установить ListPopupWindow под его якорный вид?

MainActivity.java

в OnCreate()

productName = (EditText) findViewById(
    R.id.product_name); 
listPopupWindow = new ListPopupWindow(
     MainActivity.this); 
listPopupWindow.setAdapter(new ArrayAdapter(
     MainActivity.this, 
    R.layout.list_item, products)); 


listPopupWindow.setAnchorView(productName); 
listPopupWindow.setWidth(300); 
listPopupWindow.setHeight(400); 

listPopupWindow.setModal(true); 
listPopupWindow.setPromptPosition(ListPopupWindow.POSITION_PROMPT_BELOW); 
listPopupWindow.setOnItemClickListener(
     MainActivity.this); 
productName.setOnClickListener(new OnClickListener() { 
    public void onClick(View v) { 
     listPopupWindow.show(); 
    } 
}); 

как я могу установить ListPopupWindow ниже моей anchorview (EditText)?

+0

вы попробовали 'setVerticalOffset (int offset)' – Elltz

+0

теперь у меня другая проблема вроде: я не могу щелкнуть родительский элемент представления, когда ListpopupWindow открыт. PLZ помочь мне. –

+0

& почему это должно вас удивить? его модальный использовать этот [ListPopupWindow.setModal (true)] (http://developer.android.com/reference/android/widget/ListPopupWindow.html#setModal%28boolean%29), попробуйте (если) он будет работать, с этим, когда родитель затронут, он будет отклонен – Elltz

ответ

1

путем настройки высоты и ширины, решена моя проблема. его зависимость зависит от разрешения экрана и вашей кодированной высоты и ширины и его позиционирования в виде привязки на экране.

listPopupWindow.setWidth(250); 
listPopupWindow.setHeight(300); 

Это изменение решило проблему.

+0

, почему бы вам не использовать обертку? – Elltz