2012-06-06 3 views
0

Я проверил, что намерение, которое я сделал, прошел через мое новое действие, однако я не могу помещать его в созданный список.Я могу поместить свое намерение в listview

Я получил свой элемент списка, но он находится в строке. Это проблема, с которой я столкнулся, потому что мне нужно преобразовать ее в ArrayList(). Поэтому я не уверен, правильно ли последнее предложение кода.

if (checkedItems != null){ 
for (int i=0; i<checkedCount; i++) { 
    if (checkedItems.valueAt(i)) { 
    String item = lstMenu.getAdapter().getItem(checkedItems.keyAt(i)).toString(); 

Ниже приведен код для моего нового класса, где я прохожу через мое намерение пункта от предыдущего ArrayList. Заранее спасибо (:

package com.msyd.MenuProject; 
import java.util.ArrayList; 
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 
public class Result extends Activity { 
    ArrayList<String> items; 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState) 
     setContentView(R.layout.result); 

     Intent intent = this.getIntent(); 
     String selected = intent.getStringExtra("item"); 
    } 

    protected void onResume(){ 
     super.onResume(); 

     // Configure the listview 
     items = new ArrayList<String>(); 
     ListView lstitems = (ListView)this.findViewById(R.id.menuResult); 

     //lstitems.addItem(selected); 
     lstitems.setAdapter(new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,items)); 
    } 
    private void addItem(String item) { 
     items.add(item); 
     ListView lstitems = (ListView)this.findViewById(R.id.menuResult); 
     ArrayAdapter<String> ad =(ArrayAdapter<String>)lstitems.getAdapter(); 
     ad.notifyDataSetChanged();` 
    } 
} 

ответ

0

На самом деле Вам нужно быть немного более ясно, что вы пытаетесь достичь Но я думаю, что следующий фрагмент кода поможет

package com.msyd.MenuProject; 

import java.util.ArrayList; 
import android.app.Activity; 
import android.content.Intent; 
import android.os.Bundle; 
import android.widget.ArrayAdapter; 
import android.widget.ListView; 

public class Result extends Activity 
{ 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState) 
     setContentView(R.layout.result); 
    } 

    protected void onResume() 
    { 
     super.onResume(); 
     Intent intent = this.getIntent(); 
     String selected = intent.getStringExtra("item"); 
     // Configure the listview 
     ListView lstitems = (ListView) this.findViewById(R.id.menuResult); 
     ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
       android.R.layout.simple_list_item_1, items); 
     adapter.add(selected); 
     lstitems.setAdapter(adapter); 
    } 

} 

В настоящее время в будущем, когда вы добавляете.. новые элементы к адаптеру не забудьте позвонить

adapter.notifyDataSetChanged(); 
+0

Эй @Vipul Я попытался кодами вы рекомендуемые и мое приложение разбилось? Почему это так, то коды вы рекомендовали были очень похожи на мой. Y ou просто переместил некоторые коды в метод, и все приложение разбилось? Любые души могут помочь? : | – Lene

+0

Возможно, вы захотите опубликовать дополнительную информацию о том, как приложение «разбилось». Выход Logcat, трассировка стека, что-то более полезное. –

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