Я подозреваю, что вам нужен не класс, а экземпляр рассматриваемого класса. Один из способов сделать это будет с картой:
Map<String, Runner> runners = new HashMap<String, Runner>();
runners.put("P", new P());
runners.put("Ch", new Ch());
// etc.
(где Runner - это интерфейс, который реализуют все ваши классы). Затем, внутри вашего onListItemClick()
метода, где у вас есть тост:
runners.get(keyword).run();
(где run () - метод, который вы хотите запустить).
Обновление (для адресации вашего комментария)
Трудно сказать, где именно размещать биты кода, но на основании вашего вопроса:
Вы можете сделать бегунов полем в своей деятельности и инициализировать его в той же функции onCreate. Так что эта часть обработана.
Интерфейс Runner может быть таким простым (в своем собственном файле):
public interface Runner {
public void run();
}
и каждый из ваших классов (P, Ch, Le и т. Д.) Будет иметь бит implements
в конструкторе:
public class P implements Runner {
И должен был бы включить метод run () (который мог бы просто вызвать любой существующий метод, который вы хотите вызвать для URL):
public void run () {
// делай что хочешь здесь
}