onecoders / AndroidBook

Android Book
5 stars 4 forks source link

ListView Selected Item background and drag&drop select background bug #14

Open onecoders opened 11 years ago

onecoders commented 11 years ago
private void updateSelectedItem(int index) {
    Drawable originalBg = null;
    if (index != -1) {
        selectedItem = syncPairListView.getChildAt(index
                - syncPairListView.getFirstVisiblePosition());
        originalBg = selectedItem.getBackground();
        if (selectedItem != null) {
            selectedItem.setBackgroundColor(getResources().getColor(
                    R.color.selected_bg));
        }
    } else {
        if (selectedItem != null) {
            selectedItem.setBackground(originalBg);//API 16
        }
    }
}
onecoders commented 11 years ago
private void deleteSelectedItem() {
    adapter.remove(adapter.getItem(syncPairListView
            .getPositionForView(selectedItem)));
    // syncPairItems.remove(syncPairListView.getPositionForView(selectedItem));
    // adapter.notifyDataSetChanged();
}
onecoders commented 11 years ago
private void updateSelectedItem(int index) {
    Drawable originalBg = null;
    if (index != -1) {
        selectedItem = syncPairListView.getChildAt(index
                - syncPairListView.getFirstVisiblePosition());
        originalBg = selectedItem.getBackground();
        if (selectedItem != null) {
            selectedItem.setBackgroundColor(getResources().getColor(
                    R.color.selected_bg));
        }
    } else {
        if (selectedItem != null) {
            selectedItem.setBackgroundDrawable(originalBg);//API 1
        }
    }
}
onecoders commented 11 years ago
private void deleteSelectedItem() {
    final Animation animation = AnimationUtils.loadAnimation(
            getBaseContext(), R.anim.splash_fade_out);
    animation.setAnimationListener(new AnimationListener() {

        @Override
        public void onAnimationStart(Animation animation) {

        }

        @Override
        public void onAnimationRepeat(Animation animation) {

        }

        @Override
        public void onAnimationEnd(Animation animation) {
            adapter.remove(adapter.getItem(selectedRow));
        }
    });
    syncPairListView.getChildAt(selectedRow).startAnimation(animation);
    /*Handler handler = new Handler();
    handler.postDelayed(new Runnable() {

        @Override
        public void run() {
            adapter.remove(adapter.getItem(selectedRow));
            if (adapter.getCount() != 0) {
                animation.cancel();
            }
        }
    }, animation.getDuration());*/
}