アプリ作って海外移住

コピペプログラマーのメモ

GridView クリックなどでintentして、戻ってきた時、表示位置を変えないようにしたい時。

Google先生もあまりのってないので苦労したが、簡単だった。

 

最初の表示FLG設定

最初の表示の場合、通常通りsetAdapter する。

最初の表示じゃない場合、setAdapterしないで、

//アダプターにデータ変更の通知

adapter.notifyDataSetChanged();
  //GridViewの再描画
gv.invalidateViews();

 

 

gv= (GridView) findViewById(R.id.gridView1);

if(saisyoFlg ==1){

adapter =new Adapter_gazou(
this,
R.layout.gazouview_cell3, // 1行分のレイアウトファイル
0, // 上記レイアウト内のテキスト表示箇所のId
oya_list // 表示対象のデータ
);
gv.setAdapter(adapter);
gv.setSelection(ima_pos);
Animation anim0= AnimationUtils.loadAnimation(this,R.anim.motion);
gv.startAnimation(anim0);
saisyoFlg = 0;
}else{
// アダプターにデータ変更の通知
adapter.notifyDataSetChanged();
// GridViewの再描画
gv.invalidateViews();
}