java - 微调器未选择项目

标签 java android

我无法在微调器中选择项目。当我单击微调器中的项目时,Logcat 显示警告

W/InputManagerService(60): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@406f3d90

代码示例

package com.example.myspinner;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.view.ViewGroup;
import android.widget.Spinner;
import android.widget.ArrayAdapter;

public class MainActivity extends Activity {

    private static class RootGroup extends ViewGroup {

        Spinner spinner;

        public RootGroup(Context context) {
            super(context);

            spinner = new Spinner(context);
            addView(spinner);

            String[] objects = {"Item 1", "Item 2", "Item 3", "Item 4"};
            ArrayAdapter<CharSequence> adapter = new ArrayAdapter<CharSequence>(context, android.R.layout.simple_spinner_item, objects);
            adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
            spinner.setAdapter(adapter);
        }

        @Override
        protected void onLayout(boolean changed, int l, int t, int r, int b) {
            if (changed) {
                int height = b - t; 
                int width = r - l;
                int widthSpec = MeasureSpec.makeMeasureSpec(r - l, MeasureSpec.EXACTLY);
                int heightSpec = MeasureSpec.makeMeasureSpec(height / 8, MeasureSpec.EXACTLY);
                spinner.measure(widthSpec, heightSpec);
                spinner.layout(0, 0, width / 2, height / 4);                
            }
        }
    }    


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        final ViewGroup rootGroup = new RootGroup(MainActivity.this);
        setContentView(rootGroup);
    }
}

你能帮我吗?

最佳答案

我没有看到您在代码中设置微调器的监听器:

            spinner
                    .setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
                        public void onItemSelected(AdapterView<?> arg0,
                                View v, int position, long id) {


                        }

                        public void onNothingSelected(AdapterView<?> arg0) {

                        }
                    });

关于java - 微调器未选择项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19838230/

相关文章:

java - Selenium "return"javascript 值不打印

java - Hibernate 在绑定(bind)到 Java 时间戳对象时忽略数据库时区信息

android - 在每个 Activity 的操作栏上设置图标

javascript - 在 Android Kitkat 上模拟鼠标点击 Youtube 视频

android - react native 启动画面 : Unfortunately <APP> has stopped after SplashScreen. show()

android - 9 补丁填充未正确调整

java - 线性脉冲值

java - build-impl.xml :1048: The module has not been deployed. 有关详细信息,请参阅服务器日志。构建失败(总时间:36 秒)

java - 继承和 JAXB 如何协同工作?

java - android.support.constraint.ConstraintLayout 无法转换为 android.support.v4.widget.DrawerLayout