android中ListView performItemClick()方法参数说明

来源:互联网 发布:手机h5页面制作软件 编辑:程序博客网 时间:2024/04/30 13:23

ListView 的performItemClick()方法说明



今天用到ListView 的performItemClick()方法,下面讲一下个人对这个方法参数的理解

首先,这个方法是为了模拟用户点击而存在的,我们看一下这个方法performItemClick(View view, int position, long id),有三个参数view、position,id。第二个参数position很好理解,就是要点击的item,至于第一个参数view,和第三个参数id,我查看了android的源码:


    /**
     * Call the OnItemClickListener, if it is defined. Performs all normal
     * actions associated with clicking: reporting accessibility event, playing
     * a sound, etc.
     *
     * @param view The view within the AdapterView that was clicked.
     * @param position The position of the view in the adapter.
     * @param id The row id of the item that was clicked.
     * @return True if there was an assigned OnItemClickListener that was
     *         called, false otherwise is returned.
     */
    public boolean performItemClick(View view, int position, long id) {
        if (mOnItemClickListener != null) {
            playSoundEffect(SoundEffectConstants.CLICK);
            if (view != null) {
                view.sendAccessibilityEvent(AccessibilityEvent.TYPE_VIEW_CLICKED);
            }
            mOnItemClickListener.onItemClick(this, view, position, id);
            return true;
        }


        return false;
    }

看他的注释可以理解为,第一个参数view就是你要点击的item中的布局,id就是这个view中某个控件的id,猜想可以根据这两个参数view,id,点击到item中的控件。假如item中有一个button那么传入button的id就可以实现对button的模拟点击效果。我们可以对view参数传null,id可以传0,

performItemClick(null,0, 0);

再看mOnItemClickListener.onItemClick(this, view, position, id);这句可以发现最后调用的是我们为listview设置的点击事件。

对应下边方法中后边三个参数


@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
// TODO 自动生成的方法

}

也正好帮助理解onItemClick()方法参数的意义

0 2
原创粉丝点击