Comment mettre en avant l'affichage de la grille de l'élément à sélectionner?

Je suis entrain de créer un affichage de la Grille de mise en page avec l'image et le texte.Je veux la multi-sélection de l'élément qui fonctionne bien, mais je tiens à souligner les éléments de la grille qui est sélectionné.

Voici mon code:

public class FragMent1 extends Fragment{
BaseAdapter MyAdapter;
private Context mContext;
@SuppressLint("ValidFragment")
public FragMent1(Context c) {
mContext = c;
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
//View view = inflater.inflate(R.layout.g, null);
View view = inflater.inflate(R.layout.gridview,null);
final GridView listView = (GridView) view.findViewById(R.id.mainGrid);
listView.setAdapter(new Adapter());
//listView.setSelection(1);
listView.setChoiceMode(GridView.CHOICE_MODE_MULTIPLE_MODAL);
listView.setMultiChoiceModeListener(new MultiChoiceModeListener() {
@Override
public boolean onPrepareActionMode(ActionMode mode, Menu menu) {
//TODO Auto-generated method stub
return false;
}
@Override
public void onDestroyActionMode(ActionMode mode) {
//TODO Auto-generated method stub
}
@Override
public boolean onCreateActionMode(ActionMode mode, Menu menu) {
//TODO Auto-generated method stub
mode.setTitle("Select Items");
mode.setSubtitle("One item selected");
return true;
}
@Override
public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
//TODO Auto-generated method stub
int selectCount = listView.getCheckedItemCount();
switch (selectCount) {
case 1:
mode.setSubtitle("One item selected");
break;
default:
mode.setSubtitle("" + selectCount + " items selected");
break;
}
return true;
}
@Override
public void onItemCheckedStateChanged(ActionMode mode, int position,
long id, boolean checked) {
//TODO Auto-generated method stub
int selectCount = listView.getCheckedItemCount();
switch (selectCount) {
case 1:
mode.setSubtitle("One item selected");
break;
default:
mode.setSubtitle("" + selectCount + " items selected");
break;
}
}
});
return view;
}
private class Adapter extends BaseAdapter {
@Override
public int getCount() {
return mThumbIds.length;
}
@Override
public Object getItem(int position) {
return null;
}
@Override
public long getItemId(int position) {
//TODO Auto-generated method stub
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View myView = convertView;
ImageView image;
if (convertView == null) {
image = new ImageView(FragMent1.this.getActivity());
image.setLayoutParams(new GridView.LayoutParams(85, 85));
image.setScaleType(ImageView.ScaleType.CENTER_CROP);
LayoutInflater inflater = (LayoutInflater)mContext.getSystemService(Context.LAYOUT_INFLATER_SERVICE);           
myView = inflater.inflate(R.layout.grid_items_ontap, null);
//Add The Image!!!           
ImageView iv = (ImageView)myView.findViewById(R.id.grid_item_image_OnTap);
iv.setImageResource(mThumbIds[position]);
//Add The Text!!!
TextView tv = (TextView)myView.findViewById(R.id.grid_item_text_onTap);
tv.setText(names[position] );
}
return myView;
}
private Integer[] mThumbIds = {
R.drawable.car, R.drawable.car,
R.drawable.car, R.drawable.car,
R.drawable.car,R.drawable.car,R.drawable.car
};
private String[] names={"ab","cd","ef","gh","ij","kl","mn"};
}
}

que dois-je ajouter le code pour mettre en évidence l'élément qui sera choisi.

Merci de me suggérer une certaine façon de le faire.
Merci à l'avance.

  • Lorsque vous gonflez le point de vue de l'adaptateur, vous pouvez définir un Style défini dans Styles.xml fichier.
  • u expalin moi.Je n'ai pas l'obtenir de vous.
  • stackoverflow.com/questions/13080900/...
  • Je veux aussi savoir que dans mon code ci-dessus, il est MultiChoiceModeListener() la méthode de sélection de la grille de l'élément sur le clic long mais j'ai besoin de sur sur il doit être sélectionné.U me dire de toute façon à supprimer long du robinet dans mon code ci-dessus.Donc,je peux remplir mon obligation.
  • pourquoi GridView est appelé listview? si déroutant..
InformationsquelleAutor user2835280 | 2013-10-10