2012-03-19 2 views
1

У меня есть следующий код:Как использовать это время внутри Runnable, определенное на лету

public void setupScreen() 
{ 
    view.runOnUiThread(new Runnable() 
    { 
     public void run() 
     { 
      view.setContentView(R.layout.game); 
      LinearLayout layout = (LinearLayout)view.findViewById(R.id.game_layout); 
      ViewTreeObserver vto = layout.getViewTreeObserver(); 
      vto.addOnGlobalLayoutListener(this); 
     } 
    }); 
} 

Этот метод находится внутри класса, который реализует OnGlobalLayoutListener. Я хочу ссылаться на класс, поэтому я могу указать его как параметр для метода addOnGlobalLayoutListener(). Проблема в том, что когда вы ссылаетесь на на этот внутри Runnable, который определен на лету, этот ссылается на Runnable вместо класса, который я пытаюсь ссылаться. Какая работа для этого?

ответ

6

Вы попробовали NameOfYourClass.this?

+1

+1 Спасибо! я знал, что это просто! – John

1

YourActivityName.this, или, возможно, YourClassName.this. Последний непроверен, и у меня нет Android SDK для тестирования.