从Android上的ImageButton打开微调器下拉菜单

时间:2016-01-08 16:16:10

标签: android spinner android-imagebutton

我的布局包含一个微调器和一个ImageButton。 微调器设置正确。按下它会显示下拉菜单。 现在,我尝试在按钮上添加onClick操作,以便打开Spinner

以下代码:

this.imageButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            spinner.performClick();
        }
    });

在genymotion模拟器上工作正常,但在我的Nexus 4& 6个设备。 在这些设备上,下拉菜单打开然后自动关闭。每10到20次尝试它可能会保持开放但是就是这样。

知道发生了什么事吗? 我该如何防止这种情况?

编辑,如果我启用android:spinnerMode ="对话框"而不是默认'下拉'它工作正常,好像有什么东西从旋转器中获得焦点......奇怪的是,按下旋转器打开下拉菜单工作正常

1 个答案:

答案 0 :(得分:0)

这是Source Hope所以它有效,

final Spinner spinner = (Spinner) findViewById(R.id.spinner);
Button okButton = (Button) findViewById(R.id.yesButton);
okButton.setOnClickListener(new View.OnClickListener() {

    @Override
    public void onClick(View v) {
        if(spinner.getSelectedItem() == null) { // user selected nothing...
            spinner.performClick();
        }
    }
});