2015-04-13 3 views
0

Я написал простое приложение, чтобы получить данные с сервера и показать в ListView, когда я получать данные с сервера с помощью JSON мои данные:Android ListView сохранить скрытый текст

id:2,offer:welcome to my shop 

Я хотел бы показать offer в listView и id скрыли строку listview, и когда я нажимаю строку listView. Показать в Toast:

id=2 

ListView адаптер:

ArrayAdapter<String> myAdaptor = new ArrayAdapter<String>(travelactivity.this, android.R.layout.simple_list_item_1, itemsList); 
        mylist.setAdapter(myAdaptor); 

Как я могу решить это?
мой код:

protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.travelcountrylist); 
     new HttpAsyncTask().execute("http://yyyy.org/tcountry.aspx"); 
     listview.setOnitemClick(){ 
       //start other activity and send id value to activity 

     } 

    } 
    ///this is HttpAsyncTask method 
    HttpAsyncTask(){ 
       Fill the listview data 
    } 

ответ

0

Держите другой массив, чтобы сохранить идентификатор.

ArrayList<String> ids=new ArrayList<String>(); 
// after reading jsonarray 

ids.add (jobj.getString ("ID");

grid.setOnItemSelectedListener(new OnItemSelectedListener() { 

      @Override 
      public void onItemSelected(AdapterView<?> parent, View view, 
        int position, long id) { 
       // TODO Auto-generated method stub 


    Toast.makeText(context,"clicked"+ids(position),1500).show(); 
      } 

      @Override 
      public void onNothingSelected(AdapterView<?> parent) { 
       // TODO Auto-generated method stub 

      } 
     }); 



    } 
+0

спасибо, Вы после того, как выберите элемент в ListView и отправить идентификатор в деятельности2 и при нажатии кнопки назад на деятельности2 и вернуться к этой ativity ArrayList не нулевой? –

+0

объявить arraylist как public static в классе с именем Constantss.java и использовать его внутри вашей активности, чтобы данные были там, даже если вы перемещаетесь спереди или сзади. Вы также можете использовать aim.putExtras для передачи данных между двумя действиями. –

+0

спасибо, что обратили внимание на мою проблему, мой друг! Как я могу объявить arraylist в общедоступной деятельности, потому что моя json читает часть в одном методе, например readJSON(), и когда читаем json и заполняем в arrayList мой список событие в действие onCreate. –

0

Я не уверен, что это решение поможет вам, как вам нужно Но попробовать это

  • ..

    Создание пользовательского адаптера с обеими значениями id и предложениями и контексты заведений

  • В адаптер используется при нажатии на список В строке вы найдете тост.

Как

listRowLayout.setOnClickListener(new OnClickListener() { 
      @Override 
      public void onClick(View v) { 
       yourListActivity.showToast(id); 
     } 
}); 
Смежные вопросы