나는 내가 다음과 같은 방법을 호출 서비스에서 내 주요 활동Toast in Service의 서비스에 대한 올바른 컨텍스트?</p> <pre><code>MAIN_ACTIVITY.showMessages(Consts.CONNECTION_FAILED); </code></pre> <p>을하지만 보여주는에는 토스트가 없습니다 :
public void showMessages(int MSGCODE) {
Log.d("MSG", "showmessage reached with code " + MSGCODE);
switch (MSGCODE)
{
case '0':
Toast.makeText(tabHost.getContext(), "Account verification failed. Please try to reenter your password.", Toast.LENGTH_LONG).show();
break;
case '1':
Toast.makeText(tabHost.getContext(), "Networking Service started.", Toast.LENGTH_LONG).show();
break;
case '2':
Toast.makeText(tabHost.getContext(), "Networking Service stopped.", Toast.LENGTH_LONG).show();
break;
case '3':
Toast.makeText(tabHost.getContext(), "Connection to server failed.", Toast.LENGTH_LONG).show();
break;
}
}
내에서 다음과 같은 방법을 얻었다. TabHost는 세 개의 다른 탭을 호스팅합니다. 나는 이미 그 생각이 틀림없이 잘못된 컨텍스트를 선택하지만, 나는 그 중 하나가 올바른 아이디어인지, 어떻게 얻을 수 있는지 전혀 알지 못한다.
private TabHost tabHost;
private final String[] loginStrings = new String[2];
public static Boolean runOnce = true;
public static ArrayList<String> messages;
private Intent svc;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
tabHost = getTabHost();
Intent intent = new Intent().setClass(this, BuddylistActivity.class);
tabHost.addTab(tabHost.newTabSpec("tabBuddylist").setIndicator("Buddylist").setContent(intent));
intent = new Intent().setClass(this, ChatsActivity.class);
tabHost.addTab(tabHost.newTabSpec("tabBuddylist").setIndicator("Chats").setContent(intent));
intent = new Intent().setClass(this, SchedularActivity.class);
tabHost.addTab(tabHost.newTabSpec("tabBuddylist").setIndicator("Schedular").setContent(intent));
getApplicationContext()를 사용하십시오. – silentnuke