我有点小问题,我将如何识别哪个项目被点击OnClickEvent。我使用Images + Text绘制gridview菜单。这里是我的代码:获取哪个项目被点击
public class MyActivity extends Activity implements OnItemClickListener {
GridView menu;
private String[] menu_text = {
"Menu1",
"Menu2",
"Menu3",
"Menu4",
"Menu5",
"Menu6",
"Menu7",
"Menu8"};
private Integer[] menu_icon = {
R.drawable.icon,
R.drawable.icon,
R.drawable.icon,
R.drawable.icon,
R.drawable.icon,
R.drawable.icon,
R.drawable.icon,
R.drawable.icon,};
/** Called when the activity is first created. */
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title);
menu = (GridView)findViewById(R.id.Menu);
menu.setOnItemClickListener(this);
menu.setAdapter(new MenuItem(this, R.layout.menu_item, menu_text));
}
public class MenuItem extends ArrayAdapter {
public MenuItem(Context context, int textViewResourceId, String[] objects) {
super(context, textViewResourceId, objects);
}
public View getView(int position, View convertView, ViewGroup parent) {
LayoutInflater inflater=getLayoutInflater();
View row=inflater.inflate(R.layout.menu_item, parent, false);
TextView tv=(TextView)row.findViewById(R.id.text);
tv.setText(menu_text[position]);
tv.setTextColor(Color.BLACK);
tv.setCompoundDrawablesWithIntrinsicBounds(0, menu_icon[position], 0, 0);
return row;
}
}
public void onItemClick(AdapterView arg0, View arg1, int arg2, long arg3) {
// TODO Action to perform
}
}
所以我的问题是我怎么能识别被点击了这个格菜单哪个项目。
公共无效onItemClick(适配器视图为arg0,查看ARG1,INT ARG2,长ARG3){ 字符串menuText = MENU_TEXT [ARG2]; Drawable d = getResources()。getDrawable(menu_icon [arg2]); } – 2012-02-24 12:08:36