如图所示,我想在背景布局和GridView布局上都响应上下文菜单事件,但是现在的问题来了,其他地方都可以响应就是在第7个item后面的那两个空白地方响应不了,求助!测试源码很简单:
package com.test;import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;import android.app.Activity;
import android.os.Bundle;
import android.view.ContextMenu;
import android.view.ContextMenu.ContextMenuInfo;
import android.view.View;
import android.widget.GridView;
import android.widget.LinearLayout;
import android.widget.SimpleAdapter;
import android.widget.Toast;public class TestGridViewActivity extends Activity {
GridView gridView;
LinearLayout layout; /** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
gridView = (GridView) findViewById(R.id.gridView);
layout = (LinearLayout) findViewById(R.id.linear);
int[] bitmap = new int[] { R.drawable.a1, R.drawable.a2, R.drawable.a3,
R.drawable.a4, R.drawable.a5, R.drawable.a6, R.drawable.a7 };
String[] strings = new String[] { "1", "2", "3", "4", "5", "6", "7" };
List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
for (int i = 0; i < bitmap.length; i++) {
Map<String, Object> map = new HashMap<String, Object>();
map.put("bitmap", bitmap[i]);
map.put("text", strings[i]);
list.add(map);
}
SimpleAdapter simpleAdapter = new SimpleAdapter(
TestGridViewActivity.this, list, R.layout.test, new String[] {
"bitmap", "text" }, new int[] { R.id.imageView,
R.id.textView });
gridView.setAdapter(simpleAdapter);
gridView.setOnCreateContextMenuListener(this);
layout.setOnCreateContextMenuListener(this);
} @Override
public void onCreateContextMenu(ContextMenu menu, View v,
ContextMenuInfo menuInfo) {
// TODO Auto-generated method stub
super.onCreateContextMenu(menu, v, menuInfo);
Toast.makeText(TestGridViewActivity.this, "test", 0).show();
}
}