Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.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
Java 在Android studio中创建预期分号_Java_Android_Android Studio_Oncreate - Fatal编程技术网

Java 在Android studio中创建预期分号

Java 在Android studio中创建预期分号,java,android,android-studio,oncreate,Java,Android,Android Studio,Oncreate,我在private void updateUI上一直看到一个红色标记,其中显示了一条错误消息,显示express预期的分号。尝试以下操作: public class MainActivity extends AppCompatActivity { private TaskDBHelper helper; private ListAdapter listAdapter; @Override public void onCrea

我在private void updateUI上一直看到一个红色标记,其中显示了一条错误消息,显示express预期的分号。

尝试以下操作:

    public class MainActivity extends AppCompatActivity {
        private TaskDBHelper helper;
        private ListAdapter listAdapter;
        @Override
        public void onCreate(Bundle savedInstanceState) {

            private void updateUI(){
                helper = new TaskDBHelper(MainActivity.this);
                SQLiteDatabase sqlDB = helper.getReadableDatabase();
                Cursor cursor = sqlDB.query(TaskContract.TABLE,
                        new String[]{TaskContract.Columns._ID, TaskContract.Columns.TASK},
                        null, null, null, null, null);

                listAdapter = new SimpleCursorAdapter(
                        this,
                        R.layout.task_view,
                        cursor,
                        new String[]{TaskContract.Columns.TASK},
                        new int[]{R.id.taskTextView},
                        0
                );
                ListView listView = (ListView) findViewById(R.id.list);
                listView.setAdapter(listAdapter);
            }
        }
}

在Java中,不能在另一个方法的作用域内声明一个方法。只能在类的作用域内声明方法。因此,您声明方法updateUI的方式无效,应该移动到类作用域。

您在oncreate method中调用methodupdateUi方法实现中的方法。它说重写方法应该调用super.oncreateupdated它。添加此行:super.onCreatesavedInstanceState;顺便说一句,在onCreate:setContentViewR.layout.your_活动之后,您也需要设置布局;
 public class MainActivity extends AppCompatActivity {
        private TaskDBHelper helper;
        private ListAdapter listAdapter;
        @Override
        public void onCreate(Bundle savedInstanceState) {
                super.onCreate(savedInstanceState);
                updateUI();
                ListView listView = (ListView) findViewById(R.id.list);
                listView.setAdapter(listAdapter);
            }

            private void updateUI(){
                helper = new TaskDBHelper(MainActivity.this);
                SQLiteDatabase sqlDB = helper.getReadableDatabase();
                Cursor cursor = sqlDB.query(TaskContract.TABLE,
                        new String[]{TaskContract.Columns._ID, TaskContract.Columns.TASK},
                        null, null, null, null, null);

                listAdapter = new SimpleCursorAdapter(
                        this,
                        R.layout.task_view,
                        cursor,
                        new String[]{TaskContract.Columns.TASK},
                        new int[]{R.id.taskTextView},
                        0
                );
        }
}