Android 括号后应为类或接口

Android 括号后应为类或接口,android,Android,我无法理解这一点,但OnCreateOptions菜单前面的括号表示它右侧有一个空格,它需要一个类或接口。救命啊,我就是想不出这个!我真的不知道发生了什么事 package com.spizer.mizer2; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import andro

我无法理解这一点,但OnCreateOptions菜单前面的括号表示它右侧有一个空格,它需要一个类或接口。救命啊,我就是想不出这个!我真的不知道发生了什么事

package com.spizer.mizer2;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ExpandableListView;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ExpandableListView;
import android.widget.ExpandableListView.OnChildClickListener;
import android.widget.ExpandableListView.OnGroupClickListener;
import android.widget.ExpandableListView.OnGroupCollapseListener;
import android.widget.ExpandableListView.OnGroupExpandListener;
import android.widget.Toast;

public class DifficultyMenu extends AppCompatActivity {

private int T1;
private int T2;
private int T3;
private int T4;

private String S1;
private String S2;
private String S3;
private String S4;


ExpandableListAdapter listAdapter;
ExpandableListView expListView;
List<String> listDataHeader;
HashMap<String, List<String>> listDataChild;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_difficulty_menu);

    // get the list view
    expListView = (ExpandableListView) findViewById(R.id.lvExp);

    // preparing list data
    prepareListData();

    listAdapter = new ExpandableListAdapter(this, listDataHeader, listDataChild);

    // setting list adapter
    expListView.setAdapter(listAdapter);

    // List view Group click listener
    expListView.setOnGroupClickListener(new OnGroupClickListener() {

        @Override
        public boolean onGroupClick(ExpandableListView parent, View v,
                                    int groupPosition, long id) {
            // Toast.makeText(getApplicationContext(),
            // "Group Clicked " + listDataHeader.get(groupPosition),
            // Toast.LENGTH_SHORT).show();
            return false;
        }
    });

    // List view Group expanded listener
    expListView.setOnGroupExpandListener(new OnGroupExpandListener() {

        @Override
        public void onGroupExpand(int groupPosition) {
            Toast.makeText(getApplicationContext(),
                    listDataHeader.get(groupPosition) + " Expanded",
                    Toast.LENGTH_SHORT).show();
        }
    });

    // List view Group collapsed listener
    expListView.setOnGroupCollapseListener(new OnGroupCollapseListener() {

        @Override
        public void onGroupCollapse(int groupPosition) {
            Toast.makeText(getApplicationContext(),
                    listDataHeader.get(groupPosition) + " Collapsed",
                    Toast.LENGTH_SHORT).show();

        }
    });

    // List view on child click listener
    expListView.setOnChildClickListener(new OnChildClickListener() {

        @Override
        public boolean onChildClick(ExpandableListView parent, View v,
                                    int groupPosition, int childPosition, long id) {
            // TODO Auto-generated method stub
            Toast.makeText(
                    getApplicationContext(),
                    listDataHeader.get(groupPosition)
                            + " : "
                            + listDataChild.get(
                            listDataHeader.get(groupPosition)).get(
                            childPosition), Toast.LENGTH_SHORT)
                    .show();
            return false;
        }
    });
}

    /*
 * Preparing the list data
 */
private void prepareListData() {
    listDataHeader = new ArrayList<String>();
    listDataChild = new HashMap<String, List<String>>();

    // Adding child data
    listDataHeader.add("AdditionDifficulty");
    listDataHeader.add("SubtractionDifficulty");
    listDataHeader.add("MultiplicationDifficulty");
    listDataHeader.add("DivisionDifficulty");

    // Adding child data
    List<String> AdditionDifficulty = new ArrayList<String>();
    while(true) {
        if(T1<10) {
            String S1 = Integer.toString(T1);
            AdditionDifficulty.add(S1);
            T1++;
            continue;
        }
        else {
            break;
        }
    }

    List<String> SubtractionDifficulty = new ArrayList<String>();
    while(true) {
        if(T2<10) {
            String S2 = Integer.toString(T2);
            SubtractionDifficulty.add(S2);
            T2++;
            continue;
        }
        else {
            break;
        }
    }

    List<String> MultiplicationDifficulty = new ArrayList<String>();
    while(true) {
        if(T3<10) {
            String S3 = Integer.toString(T3);
            MultiplicationDifficulty.add(S3);
            T3++;
            continue;
        }
        else {
            break;
        }
    }

    List<String> DivisionDifficulty = new ArrayList<String>();
    while(true) {
        if(T4<10) {
            String S4 = Integer.toString(T4);
            DivisionDifficulty.add(S4);
            T4++;
            continue;
        }
        else {
            break;
        }
    }

    listDataChild.put(listDataHeader.get(0), AdditionDifficulty); // Header,        Child data
    listDataChild.put(listDataHeader.get(1), SubtractionDifficulty);
    listDataChild.put(listDataHeader.get(2), MultiplicationDifficulty);
    listDataChild.put(listDataHeader.get(3), DivisionDifficulty);
}
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.menu_difficulty_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle action bar item clicks here. The action bar will
    // automatically handle clicks on the Home/Up button, so long
    // as you specify a parent activity in AndroidManifest.xml.
    int id = item.getItemId();

    //noinspection SimplifiableIfStatement
    if (id == R.id.action_settings) {
        return true;
    }

    return super.onOptionsItemSelected(item);
}
}
package com.spizer.mizer2;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.widget.ExpandableListView;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入android.app.Activity;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.ExpandableListView;
导入android.widget.ExpandableListView.OnChildClickListener;
导入android.widget.ExpandableListView.OnGroupClickListener;
导入android.widget.ExpandableListView.OnGroupCollapseListener;
导入android.widget.ExpandableListView.OnGroupExpandListener;
导入android.widget.Toast;
公共类疑难功能表扩展了AppCompactActivity{
私人int T1;
私人INTT2;
私人int T3;
私人int T4;
私有字符串S1;
私有字符串S2;
私有字符串S3;
私有字符串S4;
可扩展列表适配器;
ExpandableListView解释视图;
列表列表数据头;
HashMapListDataChild;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u难度\u菜单);
//获取列表视图
expListView=(ExpandableListView)findViewById(R.id.lvExp);
//准备列表数据
prepareListData();
listAdapter=新的ExpandableListAdapter(此,listDataHeader,listDataChild);
//设置列表适配器
expListView.setAdapter(listAdapter);
//列表视图组单击侦听器
expListView.setOnGroupClickListener(新OnGroupClickListener(){
@凌驾
公共布尔值onGroupClick(ExpandableListView父视图,视图v,
int groupPosition,长id){
//Toast.makeText(getApplicationContext(),
//“组单击”+listDataHeader.get(groupPosition),
//吐司。长度(短)。show();
返回false;
}
});
//列表视图组扩展侦听器
expListView.setOnGroupExpandListener(新的OnGroupExpandListener(){
@凌驾
public void onGroupExpand(int groupPosition){
Toast.makeText(getApplicationContext(),
listDataHeader.get(groupPosition)+“Expanded”,
吐司。长度(短)。show();
}
});
//列表视图组已折叠侦听器
expListView.setOnGroupCollapseListener(新OnGroupCollapseListener(){
@凌驾
公共void-onGroupCollapse(int-groupPosition){
Toast.makeText(getApplicationContext(),
listDataHeader.get(groupPosition)+“折叠”,
吐司。长度(短)。show();
}
});
//子单击侦听器上的列表视图
setOnChildClickListener(新的OnChildClickListener(){
@凌驾
公共布尔onChildClick(ExpandableListView父视图,视图v,
int groupPosition、int childPosition、long id){
//TODO自动生成的方法存根
Toast.makeText(
getApplicationContext(),
listDataHeader.get(groupPosition)
+ " : "
+listDataChild.get(
listDataHeader.get(groupPosition)).get(
儿童位置),吐司。长度(短)
.show();
返回false;
}
});
}
/*
*准备列表数据
*/
私有void prepareListData(){
listDataHeader=新的ArrayList();
listDataChild=newHashMap();
//添加子数据
添加(“添加困难”);
添加(“减法难度”);
添加(“乘法难度”);
listDataHeader.add(“division”);
//添加子数据
列表添加难度=新建ArrayList();
while(true){

如果(T1我认为方法前面的第二个大括号是无关的。你的
onCreateOptions菜单
方法则认为它不属于任何类,这在Java中是不允许的

    listDataChild.put(listDataHeader.get(3), DivisionDifficulty);
}
} // Remove me!

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    ...
}
下面是应用了适当缩进的代码。这更清楚地表明活动类结束得太早了:

package com.spizer.mizer2;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ExpandableListView;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.ExpandableListView;
import android.widget.ExpandableListView.OnChildClickListener;
import android.widget.ExpandableListView.OnGroupClickListener;
import android.widget.ExpandableListView.OnGroupCollapseListener;
import android.widget.ExpandableListView.OnGroupExpandListener;
import android.widget.Toast;

public class DifficultyMenu extends AppCompatActivity {

    private int T1;
    private int T2;
    private int T3;
    private int T4;

    private String S1;
    private String S2;
    private String S3;
    private String S4;

    ExpandableListAdapter listAdapter;
    ExpandableListView expListView;
    List<String> listDataHeader;
    HashMap<String, List<String>> listDataChild;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_difficulty_menu);

        // get the list view
        expListView = (ExpandableListView) findViewById(R.id.lvExp);

        // preparing list data
        prepareListData();

        listAdapter = new ExpandableListAdapter(this, listDataHeader, listDataChild);

        // setting list adapter
        expListView.setAdapter(listAdapter);

        // List view Group click listener
        expListView.setOnGroupClickListener(new OnGroupClickListener() {
            @Override
            public boolean onGroupClick(ExpandableListView parent, View v,
                    int groupPosition, long id) {
                // Toast.makeText(getApplicationContext(),
                // "Group Clicked " + listDataHeader.get(groupPosition),
                // Toast.LENGTH_SHORT).show();
                return false;
            }
        });

        // List view Group expanded listener
        expListView.setOnGroupExpandListener(new OnGroupExpandListener() {
            @Override
            public void onGroupExpand(int groupPosition) {
                Toast.makeText(getApplicationContext(),
                        listDataHeader.get(groupPosition) + " Expanded",
                        Toast.LENGTH_SHORT).show();
            }
        });

        // List view Group collapsed listener
        expListView.setOnGroupCollapseListener(new OnGroupCollapseListener() {
            @Override
            public void onGroupCollapse(int groupPosition) {
                Toast.makeText(getApplicationContext(),
                        listDataHeader.get(groupPosition) + " Collapsed",
                        Toast.LENGTH_SHORT).show();

            }
        });

        // List view on child click listener
        expListView.setOnChildClickListener(new OnChildClickListener() {
            @Override
            public boolean onChildClick(ExpandableListView parent, View v,
                    int groupPosition, int childPosition, long id) {
                // TODO Auto-generated method stub
                Toast.makeText(
                        getApplicationContext(),
                        listDataHeader.get(groupPosition)
                                + " : "
                                + listDataChild.get(listDataHeader.get(groupPosition)).get(childPosition), Toast.LENGTH_SHORT)
                        .show();
                return false;
            }
        });
    }

    /*
     * Preparing the list data
     */
    private void prepareListData() {
        listDataHeader = new ArrayList<String>();
        listDataChild = new HashMap<String, List<String>>();

        // Adding child data
        listDataHeader.add("AdditionDifficulty");
        listDataHeader.add("SubtractionDifficulty");
        listDataHeader.add("MultiplicationDifficulty");
        listDataHeader.add("DivisionDifficulty");

        // Adding child data
        List<String> AdditionDifficulty = new ArrayList<String>();
        while(true) {
            if(T1<10) {
                String S1 = Integer.toString(T1);
                AdditionDifficulty.add(S1);
                T1++;
                continue;
            }
            else {
                break;
            }
        }

        List<String> SubtractionDifficulty = new ArrayList<String>();
        while(true) {
            if(T2<10) {
                String S2 = Integer.toString(T2);
                SubtractionDifficulty.add(S2);
                T2++;
                continue;
            }
            else {
                break;
            }
        }

        List<String> MultiplicationDifficulty = new ArrayList<String>();
        while(true) {
            if(T3<10) {
                String S3 = Integer.toString(T3);
                MultiplicationDifficulty.add(S3);
                T3++;
                continue;
            }
            else {
                break;
            }
        }

        List<String> DivisionDifficulty = new ArrayList<String>();
        while(true) {
            if(T4<10) {
                String S4 = Integer.toString(T4);
                DivisionDifficulty.add(S4);
                T4++;
                continue;
            }
            else {
                break;
            }
        }

        listDataChild.put(listDataHeader.get(0), AdditionDifficulty); // Header,        Child data
        listDataChild.put(listDataHeader.get(1), SubtractionDifficulty);
        listDataChild.put(listDataHeader.get(2), MultiplicationDifficulty);
        listDataChild.put(listDataHeader.get(3), DivisionDifficulty);
    }
} // The problematic brace

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_difficulty_menu, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}
package com.spizer.mizer2;
导入android.support.v7.app.AppActivity;
导入android.os.Bundle;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.widget.ExpandableListView;
导入java.util.ArrayList;
导入java.util.HashMap;
导入java.util.List;
导入android.app.Activity;
导入android.os.Bundle;
导入android.view.view;
导入android.widget.ExpandableListView;
导入android.widget.ExpandableListView.OnChildClickListener;
导入android.widget.ExpandableListView.OnGroupClickListener;
导入android.widget.ExpandableListView.OnGroupCollapseListener;
导入android.widget.ExpandableListView.OnGroupExpandListener;
导入android.widget.Toast;
公共类疑难功能表扩展了AppCompactActivity{
私人int T1;
私人INTT2;
私人int T3;
私人int T4;
私有字符串S1;
私有字符串S2;
私有字符串S3;
私有字符串S4;
可扩展列表适配器;
ExpandableListView解释视图;
列表列表数据头;
HashMapListDataChild;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u难度\u菜单);
//获取列表视图
expListView=(ExpandableListView)findViewById(R.id.lvExp);
//准备列表数据
prepareListData();
listAdapter=新的ExpandableListAdapter(此,listDataHeader,listDataChild);
//设置列表适配器
expListView.setAdapter(listAdapter);