1

私はアンドロイドが初めてで、メールのようなアプリケーションを開発しています。アプリケーションでは、サーバーからの JSON 文字列からリストを作成します (スクロール ビューに埋め込まれたテーブル ビューに行を作成します)。今、アイテムをクリックすると、単一のアイテムを詳細に表示しようとしています。

クリックすると、対応するアイテムの ID を取得し、次のページを使用して新しいページを読み込みます。私のコードは次のようになります

Intent intent = new Intent(FirstActivity.this, SecondActivity.class);
Bundle b = new Bundle();
b.putInt("id", 124); 
b.putInt("message", "Message");
intent.putExtras(b); 
startActivity(intent);
finish();

しかし、私の問題は、そのページから戻ったときにリストページがクリアされることです。

つまり、子ページの削除ボタンをクリックすると、リストページの同じアイテムも削除したいのです。しかし、子ページからアイテムを削除した後、このコードを使用して親ページにリダイレクトします。

Intent intent = new Intent(SecondActivity.this, FirstActivity.class);
Bundle b = new Bundle();
b.putInt("id", 124); 
intent.putExtras(b); 
startActivity(intent);
finish();

子ビューから来る場合はページを更新せずに単一のアイテムを削除し、直接来る場合は新しいページをロードする方法。

お時間をいただきありがとうございます助けてくださいよろしくお願いします

4

2 に答える 2

0

remove()のメソッドを使用して、目的の項目をリストから削除するだけですArrayAdapter

それを行う可能な方法は次のとおりです。

Object toRemove = arrayAdapter.getItem([POSITION]);
arrayAdapter.remove(toRemove);

もう 1 つの方法は、ArrayAdapterを変更しArrayListて呼び出すことです。notifyDataSetChanged()

arrayList.remove([INDEX]);
arrayAdapter.notifyDataSetChanged();
于 2013-08-13T04:30:39.777 に答える
0

シングルトン クラス object を使用できる別のオプションがあります。シングルトンクラスでリストを宣言し、次の例のように好きな場所で使用するだけで、すべての場所で更新されます

    public class Singleton {

       private static Singleton instance;
       private static List<Product> itemInfos = new ArrayList<Product>();
       Singleton() {
     } 

     }

アクティビティを再開するときは、 onResume() でアダプターに通知するだけです

于 2013-08-13T04:48:10.373 に答える