Adapter的arrayladapter和simpleadapter使用

来源:互联网 发布:歧视 知乎 编辑:程序博客网 时间:2024/06/05 17:22
       //Arrayadapter的使用
 
在Activity中写入内容
//在strings XML中已经写好资源使用这个数组
 private CharSequence[] array;
//没有创建则可以创建一个字符串数组
String[] str=new String[]{}
创建ListView找到创建的ListView的id
ListView listView=(ListView)findViewById(R.id.arraylist);
//使用string字符串的 使用这个方法加入进本存放的文本
ArrayAdapter arrayAdapter=new ArrayAdapter(this,R.layout.note, str);
//使用已经创建好xml文件字符串的使用
array=getResources().getTextArray(R.array.arraylist);
//给这个listView添加 将这个listView更改为arrayAdapter
listView.setAdapter(arrayAdapter);

//为这个listView创建监听
        listView.setAdapter(arrayAdapter);
        listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
            @Override
            public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
//判定监听的是那个 使用position   0是第一个,1是第二个,依次类推。
                if(position==0){
                startActivity(new Intent(MyActivity.this,ToggleButton.class));
                }
                if(position==1){
                    startActivity(new Intent(MyActivity.this,Diaoyong.class));
                }
            }
//如果要实现列表的值传送 创建一个TextView来接收
                TextView textView=(TextView)view;
               //使用一个字符串来转换接收这个textView的值
                String s=textView.getText().toString();
               //使用Intent来实现传值
                Intent intent=new Intent(MyActivity.this,Viewtext.class);
               //将这个字符串意键值对的方式放入这个intent中
                intent.putExtra("message",s);
               //启动这个Activity将intent放入
                startActivity(intent);

//在创建的另一个接收文本的TextView  在这个Activity的接收
     //找到这个XML文件中TextView的id
        TextView mtextView=(TextView)findViewById(R.id.textview);
        //用这个textView来接收这个值
mtextView.setText(getIntent().getStringExtra("message"));

 

 

    //Simpleadapter使用
public class SimpleAdapterActivity extends Activity {
    private ListView mlistView;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.simple_adapter);

        mlistView=(ListView)findViewById(R.id.onelistview);
        //创建一个String数组 需要三个值,名称,内容和图片
        String [] from=new String[]{"title","info","img"};
        //创建一个int的数组  并且按顺序找到文本和图片的地址
        int[] to=new int[]{R.id.onetextview,R.id.twotextview,R.id.oneimageview};
        //实例化 SimpleAdapter
        SimpleAdapter adapter=new SimpleAdapter(this,getData(),R.layout.text_view,from,to);
        //为这个ListView添加这些值
        mlistView.setAdapter(adapter);
    }
//重写实例化 SimpleAdapter的方法。
    private List<Map<String, Object>> getData(){
        List<Map<String, Object>> list=new ArrayList<Map<String, Object>>();
        Map<String, Object> map=new HashMap<String, Object>();
        map.put("title","全城通用");
        map.put("info", "<店铺通用劵>,满200元抵用50元,无需预约,免费水果,免费Wifi,提倡节约,免费提供健康绿色打包盒,活动时间仅限每周4全天,大家不要错过哦");
        map.put("img",R.drawable.abc);
        list.add(map);
        return list;
      }
    }

 


0 0
原创粉丝点击