NEWBIE 경고!내 액티비티를 인스턴스화 할 수 있습니까? 그럴 수 있습니까?
여기 상황이 있습니다. 내 응용 프로그램의 UI를 만들고 업데이트하는 모든 메서드가 포함 된 Android ListActivity 클래스 (AppWindow)가 있습니다. 여기에는 setListAdapter를 호출하는 메서드 (refreshWindow)가 포함되어 있으므로 비 정적이어야합니다. 지금까지 필자는 별도의 클래스 (FileHandler)를 사용하여 AppWindow 클래스에서 참조하는 파일에 대한 조작을 수행했습니다. 특정 파일 조작이 수행 될 때 refreshWindow 메서드를 호출 할 지점에 도달했습니다. 그러나 refreshWindow 메서드는 정적이 아니므로 AppWindow를 인스턴스화하고 해당 인스턴스를 통해 메서드를 호출해야합니다. 그러나, 나는 이것을하는 방법이나 그것이 좋은 생각인지 모르겠다. 아마도 필자는 FileHandler 논리를 AppWindow로 옮겨야 할 필요가 있습니다.
AppWindow.java
...
public class AppWindow extends ListActivity {
...
void refreshWindow() {
...
setListAdapter(new ListAdapter());
...
}
...
}
FileHandler.java
...
class FileHandler extends Activity {
...
static void doStuffToFiles() {
...
AppWindow appWindow = new AppWindow();
appWindow.refreshWindow();
...
}
...
}
내가이 일을해야
:여기에 코드 형태의 상황에 대한 설명인가? 그렇다면 어떻게 AppWindow를 올바르게 인스턴스화 할 수 있습니까?
완벽! 나는 정적 Context를 FileHandler에두고 AppWindow에서 "this"로 설정 한 다음 ((AppWindow) context) .refreshWindow()를 호출했다. 일할 것 같아! – osweetman