为了账号安全,请及时绑定邮箱和手机立即绑定

MainActivity 弹出窗口中的 AutoCompleteTextView

MainActivity 弹出窗口中的 AutoCompleteTextView

aluckdog 2023-03-17 16:38:07
在 MainActivity 中,我有带有 AutoCompleteTextView 的弹出窗口并且它可以工作。我什至可以用它做一些工作人员 (egtextView.setText("New"))。但我担心适配器,因为单击 TextView 后没有任何反应(没有列表和键盘)。我认为这个问题是一致的:ArrayAdapter<String> adapter = new ArrayAdapter <String (customView.getContext(),android.R.layout.simple_dropdown_item_1line, countryNameList);特别是在第一个参数 - 上下文中。我不知道我应该把什么放在那里。我的代码:public void steptwo() {        LayoutInflater inflater = (LayoutInflater) context.getSystemService(LAYOUT_INFLATER_SERVICE);        View customView = inflater.inflate(R.layout.popup_observedproperty,null);        mPopupWindow = new PopupWindow(                customView,                LayoutParams.WRAP_CONTENT,                LayoutParams.WRAP_CONTENT        );        String[] countryNameList = {"India", "China", "Australia", "New Zealand", "England", "Pakistan"};        ArrayAdapter<String> adapter = new ArrayAdapter<String>(customView.getContext(),                android.R.layout.simple_dropdown_item_1line, countryNameList);        AutoCompleteTextView textView = (AutoCompleteTextView) customView.findViewById(R.id.autoCompleteTextView);        textView.setText("New");        textView.setAdapter(adapter);        if(Build.VERSION.SDK_INT>=21){            mPopupWindow.setElevation(5.0f);        }        mPopupWindow.showAtLocation(mRelativeLayout, Gravity.CENTER,0,0);    }
查看完整描述

1 回答

?
精慕HU

TA贡献1845条经验 获得超8个赞

您需要使焦点可PopupWindow聚焦。要允许AutoCompleteTextView立即打开键盘,请将设置SoftInputMode为。PopupWindowSOFT_INPUT_STATE_ALWAYS_VISIBLE


public void steptwo() {

        LayoutInflater inflater = (LayoutInflater) context.getSystemService(LAYOUT_INFLATER_SERVICE);

        View customView = inflater.inflate(R.layout.popup_observedproperty,null);


        mPopupWindow = new PopupWindow(

                customView,

                LayoutParams.WRAP_CONTENT,

                LayoutParams.WRAP_CONTENT

        );


        String[] countryNameList = {"India", "China", "Australia", "New Zealand", "England", "Pakistan"};


        ArrayAdapter<String> adapter = new ArrayAdapter<String>(customView.getContext(),

                android.R.layout.simple_dropdown_item_1line, countryNameList);

        AutoCompleteTextView textView = (AutoCompleteTextView) customView.findViewById(R.id.autoCompleteTextView);

        textView.setText("New");

        textView.setAdapter(adapter);

        textView.setThreshold(1);


        if(Build.VERSION.SDK_INT>=21){

            mPopupWindow.setElevation(5.0f);

        }

        mPopupWindow.setFocusable(true);


        mPopupWindow.setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);

        mPopupWindow.showAtLocation(mRelativeLayout, Gravity.CENTER,0,0);

    }


查看完整回答
反对 回复 2023-03-17
  • 1 回答
  • 0 关注
  • 92 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号