Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/222.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
Javascript 无法将阵列选择插入数据库_Javascript_Android_Nullpointerexception - Fatal编程技术网

Javascript 无法将阵列选择插入数据库

Javascript 无法将阵列选择插入数据库,javascript,android,nullpointerexception,Javascript,Android,Nullpointerexception,首先,我想说的是,我的问题并不像标题所说的那么简单。这是我的问题。基本上,我试图将字符串的值设置为字符串数组中随机选择的项。如图所示: String[] array = getResources().getStringArray(R.array.states); selected_state = array[new Random().nextInt(array.length)]; 当按下一个按钮时,这个字符串被插入到我的数据库中。像这样: long id = database_helper.i

首先,我想说的是,我的问题并不像标题所说的那么简单。这是我的问题。基本上,我试图将字符串的值设置为字符串数组中随机选择的项。如图所示:

String[] array = getResources().getStringArray(R.array.states);
selected_state = array[new Random().nextInt(array.length)];
当按下一个按钮时,这个字符串被插入到我的数据库中。像这样:

long id = database_helper.insertData(selected_state);
它似乎应该起作用,但不幸的是,对我来说它不起作用。显然,当我尝试插入它时,所选的_状态为空。但我的应用程序中的另一个字符串是从editText中提取并以完全相同的方式插入的,这是完全可以的。以下是我的代码的相关部分:

public class my_class extends Fragment implements View.OnClickListener {
View rootView;
Button bing;
EditText text;
public String  selected_state;
public String TEXT;
DatabaseAdapter database_helper;
@Nullable
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    rootView = inflater.inflate(R.layout.my_fragment, container, false);
    bing = (Button) rootView.findViewById(R.id.my_btn);
    text = (EditText) rootView.findViewById(R.id.my_text_edit);
    String[] array = getResources().getStringArray(R.array.states);
    selected_state = array[new Random().nextInt(array.length)];
    bing.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            send();
        }

        private void send() {
            TEXT = text.getText().toString();
            //VALUE HOLDS UP TO HERE
            long id = database_helper.insertData(TEXT, selected_state);//NULL!!!!!!
            if(id<0){
                Toast.makeText(getActivity(), "SHES STUCK", Toast.LENGTH_LONG).show();
            }else{
                Toast.makeText(getActivity(), "SHES IN", Toast.LENGTH_LONG).show();
                text.setText("");
            }
        }
    });
    return rootView;

}

@Override
public void onClick(View v) {


}
}
public类my_类扩展片段实现View.OnClickListener{
视图根视图;
按钮兵;
编辑文本;
选定的公共字符串\u状态;
公共字符串文本;
数据库适配器数据库辅助程序;
@可空
@凌驾
CreateView上的公共视图(布局、充气机、视图组容器、捆绑包保存状态){
rootView=充气机。充气(R.layout.my_碎片,容器,假);
bing=(按钮)rootView.findViewById(R.id.my_btn);
text=(EditText)rootView.findViewById(R.id.my\u text\u edit);
String[]数组=getResources().getStringArray(R.array.states);
选定的_state=array[new Random().nextInt(array.length)];
bing.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
send();
}
私有无效发送(){
TEXT=TEXT.getText().toString();
//价值在这里保持不变
long id=database\u helper.insertData(TEXT,selected\u state);//NULL!!!!!!

if(id)是否附加了调试器以查看数组的值?我附加了。获取空指针的行是:
long id=database\u helper.insertData(TEXT,selected\u state)
TEXT很好,选定的_状态也很好,直到前一行,id也是空的吗?更新我从未初始化过数据库助手。我只是初始化了,但我仍然在同一行上得到空指针。你能粘贴错误的堆栈跟踪吗?