listview onclick открывает возможность рисования в зависимости от элемента

#android #onclick #android-listview

#Android #onclick #android-listview

Вопрос:

я довольно новичок в разработке Android, но у меня возникли некоторые проблемы, пытаясь заставить мои элементы listview открывать одно действие, но с другим отображаемым в нем в зависимости от элемента. Есть ли в любом случае view.getContext() с привязанным к нему определенным drawable . вот мой класс listview:

 lv.setOnItemClickListener (new OnItemClickListener() {
        public void onItemClick(AdapterView<?> parent, View view,
            int position, long id) {
          // When clicked, bring up MockClass.class
      if(position == 1)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 2)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 3)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 4)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 5)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 6)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 7)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 8)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 9)
      {
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
      if(position == 10)
      { 
          Intent myIntent = new Intent(view.getContext(), MockClass.class);
          startActivityForResult(myIntent, 0);
      }
  

Комментарии:

1. Можете ли вы указать, что вы имеете в виду, добавляя drawble к запуску действий?

2. итак, у меня есть 10 элементов listview, у меня есть 10 чертежей для каждого из этих разных элементов, это просто изображения — .jpg. я хочу иметь ‘MockClass.class «отобразите другое изображение в зависимости от того, какой элемент listview я нажимаю

3. приведенный выше код взят из моего listview.class

Ответ №1:

Вы должны использовать дополнительные функции Intent, такие как putExtra, для объекта intent. Теперь вы можете передавать растровое изображение как дополнительное напрямую, но я бы не советовал этого делать. Вы должны получить путь к изображению, которое хотите передать следующему действию, и передать его как дополнительное. Внутри вашего другого действия вы должны извлечь это дополнительно, используя GetIntent().getStringExtra(«ключ») и загрузить свой Drawable, используя этот путь.