Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从Android应用程序中的Java代码在布局中添加NumberPicker?_Java_Android_Android Studio_Android Layout_Android Number Picker - Fatal编程技术网

如何从Android应用程序中的Java代码在布局中添加NumberPicker?

如何从Android应用程序中的Java代码在布局中添加NumberPicker?,java,android,android-studio,android-layout,android-number-picker,Java,Android,Android Studio,Android Layout,Android Number Picker,我正在做一个简单的申请。我想从Java代码中添加NumberPicker,但当我运行它时,应用程序立即关闭。 有人能告诉我错误在哪里吗? 我知道我可以在XML中添加它,但我想从Java代码中添加它 非常感谢 package com.example.openwebpage; import androidx.appcompat.app.AppCompatActivity; import androidx.constraintlayout.widget.ConstraintLayout; impo

我正在做一个简单的申请。我想从Java代码中添加NumberPicker,但当我运行它时,应用程序立即关闭。 有人能告诉我错误在哪里吗? 我知道我可以在XML中添加它,但我想从Java代码中添加它

非常感谢

package com.example.openwebpage;

import androidx.appcompat.app.AppCompatActivity;
import androidx.constraintlayout.widget.ConstraintLayout;

import android.os.Bundle;
import android.view.ViewGroup;
import android.widget.NumberPicker;

public class MainActivity extends AppCompatActivity {
    NumberPicker np;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        ConstraintLayout layout = (ConstraintLayout) findViewById(R.id.layout);
        String[] displayed = {"1","2","3"};

        np = new NumberPicker(this);
        ConstraintLayout.LayoutParams layoutParams = new ConstraintLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
        np.setLayoutParams(layoutParams);

        np.setDisplayedValues(displayed);
        np.scrollBy(0,3);
        np.setMinValue(0);
        np.setMaxValue(3);

        np.setWrapSelectorWheel(true);

        layout.addView(np);


    }
}

您需要更新此代码段:

np.scrollBy(0,2);
np.setMinValue(0);
np.setMaxValue(2);
由于setMaxValue(3),该异常被索引为超出绑定的数组