可能是一个简单的修复程序,但我找不到问题。我在启动我的android应用程序时收到以下错误:
error: constructor MenuList in class MenuList cannot be applied to given types;
required: String,String,String,String
found: String,String
reason: actual and formal argument lists differ in length
我不明白为什么为什么只查找两个字符串参数,但是当我传递4时,这是我的代码:
MenuList类:
public class MenuList {
String ID, Name, AvailableFrom, AvailableTo;
public MenuList(String ID, String name, String availableFrom, String availableTo) {
this.ID = ID;
Name = name;
AvailableFrom = availableFrom;
AvailableTo = availableTo;
}
public String getID() {
return ID;
}
public String getName() {
return Name;
}
public String getAvailableFrom() {
return AvailableFrom;
}
public String getAvailableTo() {
return AvailableTo;
}
}
然后是Menu类本身:
public class Menus extends AppCompatActivity {
ListView listView;
List<MenuList> listMenus;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_menus);
listView = findViewById(R.id.list_menu);
listMenus = new ArrayList<>();
showList();
}
private void showList(){
String url = "hidden";
StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try {
JSONObject obj = new JSONObject(response);
JSONArray array = obj.getJSONArray("menus");
for (int i = 0; i < array.length(); i++) {
final JSONObject menuObj = array.getJSONObject(i);
MenuList m = new MenuList(menuObj.getString("menu_id"), menuObj.getString("menu_name"), menuObj.getString("available_from"), menuObj.getString("available_to"));
listMenus.add(m);
}MenuAdapter adapter = new MenuAdapter(listMenus, getApplicationContext());
listView.setAdapter(adapter);
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}){
};
MySingleton.getInstance(getApplicationContext()).addToRequestQueue(stringRequest);
}
php文件内没有错误,它按预期工作。该错误导致我尝试将菜单列表扩展为四个参数(以前是两个,并且工作正常),但是我无法弄清楚为什么在扩展菜单后它不起作用
答案 0 :(得分:0)
糟糕!
发现MenuList实际上也正在另一个活动上使用,这就是错误的出处!