public class ActivityText extends AppCompatActivity {
private GridView gv;
private SimpleAdapter adapter;
private static final int ROW = 10;// 设置列数
private ArrayList<Map<String, Object>> list;
private List<String> dataList;// 保存选中座位
@Override
protected void onCreate(Bundle savedInstanceState) {
requestWindowFeature(Window.FEATURE_NO_TITLE);// 不显示程序的标题栏
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);// 不显示系统的标题栏
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_text);
gv = findViewById(R.id.gridView1);
dataList = new ArrayList<String>();
adapter = new SimpleAdapter(// 创建适配器
this,// Context
generateDataList(), // 数据List
R.layout.t,// 行对应layout 的 id
new String[] { "Image", "Name" }, // 列名列表
new int[] { R.id.imageView1, R.id.textView1 });// 列对应空间id列表
gv.setAdapter(adapter);// 为GridView设置数据适配器
gv.setNumColumns(ROW);
gv.setVerticalSpacing(20);
gv.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
if (dataList.contains(position + 1 + "")) {
view.setBackgroundColor(Color.BLACK);
dataList.remove(position + 1 + "");
} else {
view.setBackgroundColor(Color.BLUE);
dataList.add(position + 1 + "");
}
}
});
}
/**
* 产生数据List
*
* @return
*/
private List<Map<String, Object>> generateDataList() {
if (list == null) {
list = new ArrayList<Map<String, Object>>();
} else {
list.clear();
}
for (int i = 1; i <= 50; i++) {
HashMap<String, Object> map = new HashMap<String, Object>();
map.put("Image", R.drawable.yizi);
map.put("Name", i);
list.add(map);
}
return list;
}
public boolean onCreateOptionsMenu(Menu menu) {
menu.add(1, 1, 1, "提交");
return super.onCreateOptionsMenu(menu);
}
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case 1:
Toast.makeText(this, dataList.toString(), Toast.LENGTH_SHORT)
.show();
break;
}
return super.onOptionsItemSelected(item);
}
}
、、布局
该博客主要展示了一个Android程序的代码,实现了座位选择功能。通过GridView展示座位,使用SimpleAdapter绑定数据。用户点击座位可改变颜色并记录选中状态,点击提交按钮可显示选中座位信息。还给出了相应的布局文件,包含Spinner和TextView等组件。
761

被折叠的 条评论
为什么被折叠?



