Search in sources :

Example 6 with SwipeMenuItem

use of com.baoyz.swipemenulistview.SwipeMenuItem in project JustAndroid by chinaltz.

the class SwipeLeftActivity method onCreate.

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_swipeleftlist);
    ButterKnife.bind(this);
    navBack.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            finish();
        }
    });
    navTitle.setText("带侧滑的按钮(程序管理)");
    mAppList = getPackageManager().getInstalledApplications(0);
    mListView = (SwipeMenuListView) findViewById(R.id.listView);
    mAdapter = new AppAdapter();
    mListView.setAdapter(mAdapter);
    //1.创建侧滑按钮菜单
    SwipeMenuCreator creator = new SwipeMenuCreator() {

        @Override
        public void create(SwipeMenu menu) {
            // create "open" item
            SwipeMenuItem openItem = new SwipeMenuItem(getApplicationContext());
            // set item background
            openItem.setBackground(new ColorDrawable(Color.rgb(0xC9, 0xC9, 0xCE)));
            // set item width
            openItem.setWidth(dp2px(90));
            // set item title
            openItem.setTitle("Open");
            // set item title fontsize
            openItem.setTitleSize(18);
            // set item title font color
            openItem.setTitleColor(Color.WHITE);
            // add to menu
            menu.addMenuItem(openItem);
            // create "delete" item
            SwipeMenuItem deleteItem = new SwipeMenuItem(getApplicationContext());
            // set item background
            deleteItem.setBackground(new ColorDrawable(Color.rgb(0xF9, 0x3F, 0x25)));
            // set item width
            deleteItem.setWidth(dp2px(90));
            // set a icon
            deleteItem.setIcon(R.drawable.ic_delete);
            // add to menu
            menu.addMenuItem(deleteItem);
        }
    };
    // 设置 MenuCreator
    mListView.setMenuCreator(creator);
    // 2. 设置侧滑按钮 监听事件
    mListView.setOnMenuItemClickListener(new SwipeMenuListView.OnMenuItemClickListener() {

        @Override
        public boolean onMenuItemClick(int position, SwipeMenu menu, int index) {
            ApplicationInfo item = mAppList.get(position);
            switch(index) {
                case 0:
                    // open
                    open(item);
                    break;
                case 1:
                    // delete
                    delete(item);
                    mAppList.remove(position);
                    mAdapter.notifyDataSetChanged();
                    break;
            }
            return false;
        }
    });
    // set SwipeListener
    mListView.setOnSwipeListener(new SwipeMenuListView.OnSwipeListener() {

        @Override
        public void onSwipeStart(int position) {
        // swipe start
        }

        @Override
        public void onSwipeEnd(int position) {
        // swipe end
        }
    });
}
Also used : SwipeMenu(com.baoyz.swipemenulistview.SwipeMenu) ApplicationInfo(android.content.pm.ApplicationInfo) SwipeMenuListView(com.baoyz.swipemenulistview.SwipeMenuListView) ImageView(android.widget.ImageView) BindView(butterknife.BindView) View(android.view.View) TextView(android.widget.TextView) ColorDrawable(android.graphics.drawable.ColorDrawable) SwipeMenuListView(com.baoyz.swipemenulistview.SwipeMenuListView) SwipeMenuCreator(com.baoyz.swipemenulistview.SwipeMenuCreator) SwipeMenuItem(com.baoyz.swipemenulistview.SwipeMenuItem)

Aggregations

ColorDrawable (android.graphics.drawable.ColorDrawable)6 SwipeMenu (com.baoyz.swipemenulistview.SwipeMenu)6 SwipeMenuCreator (com.baoyz.swipemenulistview.SwipeMenuCreator)6 SwipeMenuItem (com.baoyz.swipemenulistview.SwipeMenuItem)6 SwipeMenuListView (com.baoyz.swipemenulistview.SwipeMenuListView)6 View (android.view.View)5 ImageView (android.widget.ImageView)5 TextView (android.widget.TextView)5 BindView (butterknife.BindView)4 ApplicationInfo (android.content.pm.ApplicationInfo)3 Button (android.widget.Button)2 EditText (android.widget.EditText)2 NoteAdapter (com.litingzhe.justandroid.netdb.db.adapter.NoteAdapter)2 Note (com.litingzhe.justandroid.netdb.db.model.Note)2 Date (java.util.Date)2 AdapterView (android.widget.AdapterView)1 NotePresenter (com.litingzhe.justandroid.designMode.mvp.presenter.NotePresenter)1 NoteView (com.litingzhe.justandroid.designMode.mvp.view.NoteView)1 MvvmNoteAdapter (com.litingzhe.justandroid.designMode.mvvm.adapter.MvvmNoteAdapter)1