Страница 1 из 1

TabActivity и OnClickListener. Не срабатывают нажатия.

Добавлено: 23 окт 2013, 12:35
drakaris
Добрый день!
В приложении используется TabActivity, в котором реализуется интерфейс OnClickListener. При переопределении метода onClick не обрабатываются никакие нажатия на View (в моем случае это Button и два ImageView). В логах тоже ничего не пишется. Приходится указывать функцию-обработчик событий клика в xml-файле для каждого View (android:onClick=""), в таком случае все работает, но для меня это не удобно. Каким образом можно это исправить? Может я забыл где-то еще зарегистрировать обработчики? Спасибо.

Re: TabActivity и OnClickListener. Не срабатывают нажатия.

Добавлено: 23 окт 2013, 12:40
rezak90
показывай код, так же не понять где ты накосячил

Re: TabActivity и OnClickListener. Не срабатывают нажатия.

Добавлено: 23 окт 2013, 12:59
drakaris
Код я переделал, с учетом того, что назначение функций-обработчиков указывалось в xml-файле. Поэтому опишу в общих чертах.

Активность, в которой все обрабатывается

Код: Выделить всё

public class Contacts extends Activity implements OnClickListener {
    @Override
    public void onClick(View v){
          switch (v.getId()){
              // Выполняю какие-то действия
             // пишу в логи - тоже ноль результата
         }
    }
}
TabActivity, которой указывается в качестве содержимого описанный выше класс Contacts

Код: Выделить всё

public class MainAct extends TabActivity {
         @Override
         protected void onCreate(Bundle savedInstanceState) {
              super.onCreate(savedInstanceState);
              setContentView(R.layout.activity_readers_room);
              TabHost tabHost = getTabHost();
              TabHost.TabSpec tabSpec;
              // Контакты
              tabSpec = tabHost.newTabSpec("tag1");
              tabSpec.setIndicator("Контакты", getResources().getDrawable(R.drawable.info_icon));
              tabSpec.setContent(new Intent(this, Contacts.class));
              tabHost.addTab(tabSpec);
       }
}

Re: TabActivity и OnClickListener. Не срабатывают нажатия.

Добавлено: 23 окт 2013, 14:00
rezak90
а где присвоение вьюхам листенера? потому и не срабатывает онклик

Re: TabActivity и OnClickListener. Не срабатывают нажатия.

Добавлено: 23 окт 2013, 14:14
drakaris
setOnClickListener(this);
Йолки зеленые, совсем про это забыл. Код смотрел кучу раз, вроде все верно, а забыл дописать это строку. Спасибо!