1

アニメーションで Listview を閉じる方法ListView のように、最後のアイテムが最初に、2 番目に最後が 2 番目に、というように続きます。ちょうどそれが来るように。私は次のリンクを使用してこれを行いました: http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/LayoutAnimation2.html 逆の順序で同じようにしたい。

カスタムがありListView、次のコードを書きました。

public class Hella_AdlightActivity extends Activity implements OnItemClickListener {

  private ListView mListView = null;
  private ItemList_BaseAdapter mBaseAdapter = null;
  private Drawable photoId[] = new Drawable[4];

  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.main);
    photoId[0] = getResources().getDrawable(R.drawable.one_);
    photoId[1] = getResources().getDrawable(R.drawable.two_);
    photoId[2] = getResources().getDrawable(R.drawable.three_);
    photoId[3] = getResources().getDrawable(R.drawable.four_);

    mListView = (ListView)findViewById(R.id.lst_item);
    mListView.setCacheColorHint(0);

    getAnimation();

    mBaseAdapter = new ItemList_BaseAdapter(this);
    mListView.setAdapter(mBaseAdapter);

    mListView.setOnItemClickListener(this);
  }
  private void getAnimation(){
     AnimationSet set = new AnimationSet(true);

     Animation animation = new AlphaAnimation(0.0f, 1.0f);
     animation.setDuration(3000);
     set.addAnimation(animation);

     animation = new TranslateAnimation(
       Animation.RELATIVE_TO_SELF, 0.0f,Animation.RELATIVE_TO_SELF, 0.0f,
       Animation.RELATIVE_TO_SELF, -1.0f,Animation.RELATIVE_TO_SELF, 0.0f
     );
     animation.setDuration(2000);
     set.addAnimation(animation);

     LayoutAnimationController controller = new LayoutAnimationController(set, 1.0f);

     mListView.setLayoutAnimation(controller);
  }
  private class ItemList_BaseAdapter extends BaseAdapter{

    private LayoutInflater mLayout = null;
    private Context mContext = null;
    public ItemList_BaseAdapter(Context context){
      this.mContext = context;
      this.mLayout = LayoutInflater.from(mContext);
    }

    public int getCount() {
      return photoId.length;
    }

    public Object getItem(int arg0) {
      return null;
    }

    public long getItemId(int position) {
      return 0;
    }

    public View getView(int position, View convertView, ViewGroup parent) {
      if(convertView == null) {
        convertView = mLayout.inflate(R.layout.cust_list, null);
      }

      ImageView imgItem = (ImageView)convertView.findViewById(R.id.img_items);
      imgItem.setBackgroundDrawable(photoId[position]);
      return convertView;
    }
  }
}

私はListview Loadのためにそれを行い、ユーザーがリストのアイテムをリンクするたびにリストを閉じたい

4

0 に答える 0