0

如何在弹出窗口上显示微调器或自动完成文本视图?在我的应用程序中,我需要显示一个包含微调器或自定义下拉列表的弹出窗口。如果无法通过弹出窗口实现,那么替代解决方案是什么?

4

3 回答 3

2

如果你想在弹出窗口中显示微调器,你必须为微调器设置 android:spinnerMode="dialog" .. 是的,你必须为弹出窗口制作一个自定义布局并将其充气。

这是我的代码:

LayoutInflater layoutInflater  = (LayoutInflater)IOStatusActivity.this.getSystemService(LAYOUT_INFLATER_SERVICE)    
final View popupView = layoutInflater.inflate(R.layout.popupai, null);  

final PopupWindow popupWindowDi = new PopupWindow(popupView,  LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);  

final   TextView txtReadVal = (TextView)popupView.findViewById(R.id.lblPopUpAiReadFrmPLC);
final   EditText txtExpVal = (EditText)popupView.findViewById(R.id.txtPopUpAiExpVal);
Button btnDismiss = (Button)popupView.findViewById(R.id.btnPopUpAiCancle);                          
btnDismiss.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
popupWindowDi.dismiss();
}});`

您可以在我添加按钮和编辑文本时添加您的微调器。希望它有所帮助。

于 2012-07-17T09:39:30.240 回答
1

是的,有可能。您需要custom layout在弹出窗口中设计并调用该布局

假设这是我的pop up代码。

 private void showPopUp()
 {
    final AlertDialog.Builder helpBuilder = new AlertDialog.Builder(this);
    helpBuilder.setTitle("");

    LayoutInflater inflater = getLayoutInflater();
    final View PopupLayout = inflater.inflate(R.layout.jobselection, null);
    helpBuilder.setView(PopupLayout);

    final AlertDialog helpDialog = helpBuilder.create();
    helpDialog.show();

    spn =   (Spinner)PopupLayout.findViewById(R.id.spn);
    caneclbtn = (ImageButton)PopupLayout.findViewById(R.id.cancelBtn);
    selectallbtn    =   (ImageButton)PopupLayout.findViewById(R.id.selectBtn);
    clearallbtn     =   (ImageButton)PopupLayout.findViewById(R.id.clearallBtn);
    jobentries      =   (Button)PopupLayout.findViewById(R.id.entries);

    jobList         =   (ListView)PopupLayout.findViewById(R.id.list);

    //ur code here. You can add your spineer with items.
}

在此块中,您可以编写所需的内容。祝你好运

于 2012-07-17T09:33:08.623 回答
0

最好使用 dialog( android.app.Dialog) 来实现AutoCompleteTextViewAutoCompleteTextView在我看来,不可能添加 PopupWindow(你会得到一个例外)。您可以添加Spinner. PopupWindow如果您使用对话框而不是弹出窗口,则可以实现两者。

于 2015-01-20T04:32:23.333 回答