Показать тост после щелчка - PullRequest
0 голосов
/ 19 ноября 2011

Я пытаюсь создать приложение, которое отображает просмотр списка, и когда вы нажимаете на конкретный элемент в этом списке, оно отображает тост с определенной информацией.

Пока что пример, я получил этокод с этого сайта :

public class MyListActivity extends ListActivity {
public void onCreate(Bundle icicle) {
    super.onCreate(icicle);
    String[] values = new String[] { "Android", "iPhone", "WindowsMobile",
            "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
            "Linux", "OS/2" };
    ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
            android.R.layout.simple_list_item_1, values);
    setListAdapter(adapter);
}

@Override
protected void onListItemClick(ListView l, View v, int position, long id) {
    String item = (String) getListAdapter().getItem(position);
    Toast.makeText(this, item + " selected", Toast.LENGTH_LONG);
}

Так как бы я изменил код, например, для отображения тоста, содержащего информацию об Android, когда один человек нажимает на «андроид» в списке?И, конечно, при нажатии на «iPhone» и т. Д. Будет отображаться другой тост, содержащий другую информацию.

Спасибо за любую помощь, которую вы можете оказать:)

Ответы [ 2 ]

3 голосов
/ 19 ноября 2011

делает String[] values переменную класса.

toast.show () отсутствует.

Toast.makeText(this, values[position] + " selected", Toast.LENGTH_LONG).show();

Обновление

public class MyListActivity extends ListActivity 
{

    private String[] values ;

    public void onCreate(Bundle icicle) {
        super.onCreate(icicle);
         values = new String[] { "Android", "iPhone", "WindowsMobile",
                "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X",
                "Linux", "OS/2" };
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                android.R.layout.simple_list_item_1, values);
        setListAdapter(adapter);
    }

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {

        Toast.makeText(this, values[position]+ " selected", Toast.LENGTH_LONG);
    }
2 голосов
/ 19 ноября 2011

Попробуйте:

  public class MyListActivity extends ListActivity {

  private String[] _values = new String[] { "Android", "iPhone", "WindowsMobile",
        "Blackberry", "WebOS", "Ubuntu", "Windows7", "Max OS X", "Linux", "OS/2" };
  private String[] _details = new String[] { "Android Details", "iPhone Details",   
        "WindowsMobile Details", "Blackberry Details", "WebOS Details", "Ubuntu 
        Details", "Windows7 Details", "Max OS X Details", "Linux Details", "OS/2 Details" };

  public void onCreate(Bundle icicle) {
     super.onCreate(icicle);
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
                  android.R.layout.simple_list_item_1, _values);
     setListAdapter(adapter);
  }

  @Override
  protected void onListItemClick(ListView l, View v, int position, long id) {
       Toast.makeText(this, _details[position], Toast.LENGTH_LONG).show();
  }

Надеюсь, это поможет.Удачного кодирования!

...