이 메서드를 선언하면 오류가 발생합니다. 정적 컨텍스트에서는 사용할 수 없습니다. 파트에 오류가 있습니다. ArrayAdapter adapter = ... 어떤 것을 변경할 수 있습니까? 나는 전혀 모른다.정적 컨텍스트에서 사용할 수 없습니다.
protected static void myMethod()
{
arrTblNames = new ArrayList<String>();
Cursor c =
db.rawQuery
(
"SELECT name FROM sqlite_master WHERE type = 'table' AND name! = 'android_metadata'", null
);
if (c.moveToFirst())
{
while (!c.isAfterLast())
{
arrTblNames.add(c.getString(c.getColumnIndex("name")));
c.moveToNext();
}
}
ArrayAdapter<String> adapter =
new ArrayAdapter<String>
(
//HERE IS THE ERROR
this, android.R.layout.simple_spinner_item, arrTblNames
);
adapter.setDropDownViewResource
(
android.R.layout.simple_spinner_dropdown_item
);
spinner.setAdapter(adapter);
spinner.setOnItemSelectedListener
(
new AdapterView.OnItemSelectedListener()
{
@Override
public void onItemSelected
(
AdapterView<?> parent, View view, int pos, long id
)
{
selectedtable = spinner.getSelectedItem().toString();
}
@Override
public void onNothingSelected(AdapterView<?> arg0)
{
//
}
}
);
}
감사합니다. 어떻게이 메서드를 호출 할 수 있습니까? MainActivity.myMethod(); 하지만이 메서드에서 몇 가지 인수가 필요하다는 오류를 씁니다. 그리고 나는 어떤 것을 알았습니까? –
그게 어디서 왔는지에 달렸지 만 컨텍스트 타입의 매개 변수를 전달해야만합니다. 다른 활동에서 호출하고 있다고 가정 해 봅시다.이 경우에는 MainActivity를 사용할 수 있습니다. myMethod (this); ' – igor
당신은 최고입니다! 그것은 작동합니다. 저는 하루 종일이 해결책을 찾았습니다. :) –