Android利用listview实现游戏选择关卡

来源:互联网 发布:开淘宝网店怎么赚钱 编辑:程序博客网 时间:2024/05/22 06:51

首先是效果图:

下面是代码:

1.写一个xml,里面是五个按钮

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:layout_width="match_parent"    android:layout_height="match_parent">    <Button        android:layout_width="0dp"        android:layout_height="50dp"        android:id="@+id/b_level_05"        android:layout_weight="1"        />    <Button        android:layout_width="0dp"        android:layout_height="50dp"        android:id="@+id/b_level_05"        android:layout_weight="1"        />    <Button        android:layout_width="0dp"        android:layout_height="50dp"        android:id="@+id/b_level_05"        android:layout_weight="1"        />    <Button        android:layout_width="0dp"        android:layout_height="50dp"        android:id="@+id/b_level_05"        android:layout_weight="1"        />    <Button        android:layout_width="0dp"        android:layout_height="50dp"        android:id="@+id/b_level_05"        android:layout_weight="1"        /></LinearLayout>


2.在写一个ListView

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="horizontal"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:background="@drawable/image_bq"    >        <ListView        android:layout_width="match_parent"        android:layout_height="match_parent"        android:id="@+id/lv_level_list"        >    </ListView></LinearLayout>

3.定义一个类,放五个Button

package com.chenjun.ss;import android.widget.Button;public class LevelItme {    public Button button01;    public Button button02;    public Button button03;    public Button button04;    public Button button05;}

4.核心类

package com.chenjun.ss;import android.content.Intent;import android.os.Bundle;import android.support.annotation.Nullable;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.view.LayoutInflater;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.Button;import android.widget.LinearLayout;import android.widget.ListView;import java.util.ArrayList;import java.util.List;public class LevelActivity extends AppCompatActivity{    private List<List<String>> lists;    private ListView lv_level_list;    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_level);        lv_level_list = (ListView) findViewById(R.id.lv_level_list);        lists = new ArrayList<>();        int count=0;        for (int i = 0; i < 20; i++) {            List<String> s=new ArrayList<>();            for (int j = 0; j < 5; j++) {                count++;                s.add(count+"");            }            lists.add(s);        }        lv_level_list.setAdapter(new MyAdap());    }    class MyAdap extends BaseAdapter{        @Override        public int getCount() {            return lists.size();        }        @Override        public Object getItem(int position) {            return lists.get(position);        }        @Override        public long getItemId(int position) {            return position;        }        @Override        public View getView(int position, View convertView, ViewGroup parent) {            if(convertView==null){                convertView=getLayoutInflater().inflate(R.layout.level_button,null);                LevelItme le=new LevelItme();                le.button01= (Button) convertView.findViewById(R.id.b_level_01);                le.button02= (Button) convertView.findViewById(R.id.b_level_02);                le.button03= (Button) convertView.findViewById(R.id.b_level_03);                le.button04= (Button) convertView.findViewById(R.id.b_level_04);                le.button05= (Button) convertView.findViewById(R.id.b_level_05);                convertView.setTag(le);            }            final LevelItme level= (LevelItme) convertView.getTag();            level.button01.setText(lists.get(position).get(0));            level.button02.setText(lists.get(position).get(1));            level.button03.setText(lists.get(position).get(2));            level.button04.setText(lists.get(position).get(3));            level.button05.setText(lists.get(position).get(4));            return convertView;        }    }}



阅读全文
0 0
原创粉丝点击