gridView.setOnItemClickListener ( new AdapterView.OnItemClickListener () {
@Override
public void onItemClick ( AdapterView< ? > parent, View view, int position, long id ) {
ViewFlipper viewFlipper= ( ViewFlipper )view.findViewById ( R.id.viewFlipper );
view.setEnabled (false);
view.setClickable ( false );
choose ( viewFlipper, position );
}
} );
要禁用已单击的项目,在设置是否可以再次单击之前不能再次单击。我用上面的方法,但是,这个项目仍然可以点击。希望有人能帮助我,使它将禁用后,我点击了1次。
解决方案:
多亏了androider,修改一下然后得到我想要的。
在适配器上创建一个arraylist,并在表上添加true。
// put inside the Adapter
ArrayList<Boolean> itemClickable =new ArrayList<Boolean> ();
@Override
public boolean isEnabled ( int position ) {
return itemClickable.get ( position );
}
public void setItemClickable(int position,Boolean typeValue){
itemClickable.add (position,typeValue);
}
//put inside OnCreate /Constructor
for(int j=0;j<picturePath.length;j++){
itemClickable.add ( true );
}
最佳答案
在适配器中执行以下操作:
@Override
public boolean areAllItemsEnabled() {
return false;
}
@Override
public boolean isEnabled(int position) {
// according to position return here true or false to enable or disable respectively
return false;
}
更多支票:http://developer.android.com/reference/android/widget/BaseAdapter.html#isEnabled(int)
http://developer.android.com/reference/android/widget/ListAdapter.html#areAllItemsEnabled()
关于android - Android禁用在GridView上单击特定项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33931808/