2015-10-04 1 views
0

У меня есть приложение, отображающее закладку из разных таблиц. Активность закладки имеет представление списка с двумя текстовыми полями. Первое текстовое отображение используется для отображения списка слов, а второе текстовое представление - отображать имя таблицы, из которой происходит вывод слова. Я хочу, чтобы, когда я нажимаю на элемент, он перейдет в действие, основанное на имени таблицы, отображаемой во втором текстовом представлении. Но пока он хочет запустить или создать ошибку. Вот мой код:listview not firing onitemclicklistener с if

lview.setOnItemClickListener(new OnItemClickListener(){ 

     @Override 
     public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
      tview = (TextView) view.findViewById(R.id.MPList); 
      String text1 = tview.getText().toString(); 
      dictview = (TextView) view.findViewById(R.id.BMPDictList); 
      String text2 = dictview.getText().toString(); 
      if (text2.equals("tblA")){ 
       Intent inten = new Intent(Page.this, ActTblA.class); 
       inten.putExtra("wordlist", text1); 
       startActivity(inten); 
      } else if (text2.equals("tblB")){ 
       Intent inten = new Intent(Page.this, ActTblB.class); 
       inten.putExtra("wordlist", text1); 
       startActivity(inten); 
      } 


     }}); 

Если я использую вышеуказанный код, он не запускается. Но если я отвяжу tview2 к виду (просто просто dictview = (TextView) findViewById(R.id.BMPDictList);), он создаст ошибку. Может ли кто-нибудь помочь мне в этом случае?

ответ

0

Сомневаюсь с вашим OnItemClickListener, используйте AdapterView's onItemClickListener как,

lview.setOnItemClickListener(new AdapterView.OnItemClickListener() { 
    @Override 
    public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 
     // Your code 
    } 
}); 
+0

Я добавил его, но до сих пор не работает. –

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

  • Нет связанных вопросов^_^