2014-09-10 4 views
0

Я только начал изучать Android Development + Я начинаю в этом начинать.Параметры метода

На самом деле я не получаю как/где, в приведенном ниже примере, параметр метода в экземпляре.

public class MainActivity extends Activity { 
@Override 
protected void onCreate(**Bundle savedInstanceState**) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    RadioGroup group1 = (RadioGroup) findViewById(R.id.orientation); 
    group1.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() { 
     @Override 
     public void onCheckedChanged(**RadioGroup group**, int checkedId) { 
     switch (checkedId) { 
      case R.id.radioButton2: 
      group.setOrientation(LinearLayout.HORIZONTAL); 
      break; 
      case R.id.radioButton1: 
      group.setOrientation(LinearLayout.VERTICAL); 
      break; 
     } 
     } 
    }); 
} 

Спасибо за вашу помощь

+0

Параметр? Он передается методу, когда он вызывается. –

+0

Правильно жаль, что я спросил не так. Где новый экземпляр класса RadioGroup создается f.ex в onCheckedChanged и как мы получаем доступ к его методу setOrientation – 2014-09-10 20:37:29

ответ

0

RadioGroup.OnCheckedChangeListener является интерфейсом, и вы создаете annonymouse inner class на вашем:

//Take a note at the key word new 
setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener{//overriden methods here}); 

Вот как он получает экземпляр в коде. Надеюсь, поможет.

Update

  1. Ссылка на observer pattern

  2. пользовательских действий слушателем инстанцирован example

+0

Я уже знал это, но спасибо за ваш ответ в любом случае. Меня больше интересовала более глубокая информация о том, как система на самом деле ее видит и обрабатывает. – 2014-09-10 22:44:59

+0

О, я понимаю, каков был ваш вопрос. Если вам интересно, как работает actionlistener, вы можете посмотреть на шаблон наблюдателя. Таким образом, в основном с помощью actionlistner вы регистрируете наблюдателей (или слушателей) на компоненте, который вызывается при возникновении определенного события. Я обновил ответ со ссылкой на шаблон obesever и пример прослушивания пользовательских действий. Взглянуть. – Sas

+0

Большое вам спасибо. Это то, что я искал. – 2014-09-11 12:41:37

Смежные вопросы