zoukankan      html  css  js  c++  java
  • ArrayAdapter

    <?xml version="1.0" encoding="utf-8"?>
    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        tools:context=".activity.MainActivity">
    
        <ListView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:id="@+id/listView"></ListView>
    </LinearLayout>
    <?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"
        android:orientation="horizontal">
    
        <ImageView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/imageView"/>
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/textView"/>
    
    </LinearLayout>
    package com.pingyijinren.helloworld.model;
    
    /**
     * Created by Administrator on 2016/6/2 0002.
     */
    public class Fruit {
        private String name;
        private int imageId;
    
        public Fruit(String name,int imageId){
            this.name=name;
            this.imageId=imageId;
        }
    
        public String getName() {
            return name;
        }
    
        public int getImageId() {
            return imageId;
        }
    }
    package com.pingyijinren.helloworld.adapter;
    
    import android.content.Context;
    import android.view.LayoutInflater;
    import android.view.View;
    import android.view.ViewGroup;
    import android.widget.ArrayAdapter;
    import android.widget.ImageView;
    import android.widget.TextView;
    
    import com.pingyijinren.helloworld.R;
    import com.pingyijinren.helloworld.model.Fruit;
    import java.util.List;
    
    /**
     * Created by Administrator on 2016/6/2 0002.
     */
    public class FruitAdapter extends ArrayAdapter<Fruit>{
    
        public FruitAdapter(Context context, int resource, List<Fruit> objects) {
            super(context, resource, objects);
        }
    
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
            Fruit fruit=getItem(position);
            View view;
            ViewHolder viewHolder;
            if(convertView==null){
                view= LayoutInflater.from(getContext()).inflate(R.layout.fruit_item,null);
                viewHolder=new ViewHolder();
                viewHolder.imageView=(ImageView)view.findViewById(R.id.imageView);
                viewHolder.textView=(TextView)view.findViewById(R.id.textView);
                view.setTag(viewHolder);
            }
            else{
                view=convertView;
                viewHolder=(ViewHolder)view.getTag();
            }
            viewHolder.imageView.setImageResource(fruit.getImageId());
            viewHolder.textView.setText(fruit.getName());
            return view;
        }
        class ViewHolder{
            ImageView imageView;
            TextView textView;
        }
    }
    package com.pingyijinren.helloworld.activity;
    
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.view.ContextMenu;
    import android.view.Menu;
    import android.view.MenuItem;
    import android.view.View;
    import android.widget.AdapterView;
    import android.widget.ListView;
    import android.widget.Toast;
    
    import com.pingyijinren.helloworld.R;
    import com.pingyijinren.helloworld.adapter.FruitAdapter;
    import com.pingyijinren.helloworld.model.Fruit;
    
    import java.util.ArrayList;
    
    public class MainActivity extends AppCompatActivity {
        private ArrayList<Fruit> arrayList;
        private FruitAdapter fruitAdapter;
        private ListView listView;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            arrayList=new ArrayList<Fruit>();
            arrayList.add(new Fruit("苹果",R.mipmap.ic_launcher));
            arrayList.add(new Fruit("香蕉",R.mipmap.ic_launcher));
            fruitAdapter=new FruitAdapter(this,R.layout.fruit_item,arrayList);
    
            listView=(ListView)findViewById(R.id.listView);
            listView.setAdapter(fruitAdapter);
            registerForContextMenu(listView);   //注册上下文菜单
        }
    
        @Override
        public void onCreateContextMenu(ContextMenu menu, View v, ContextMenu.ContextMenuInfo menuInfo) {
            super.onCreateContextMenu(menu, v, menuInfo);
            menu.setHeaderTitle("选择操作");
            menu.add(Menu.NONE,Menu.FIRST+1,1,"删除");
            menu.add(Menu.NONE,Menu.FIRST+2,2,"取消");
        }
    
        @Override
        public boolean onContextItemSelected(MenuItem item) {
            AdapterView.AdapterContextMenuInfo adapterContextMenuInfo=(AdapterView.AdapterContextMenuInfo)item.getMenuInfo();
            int positon=adapterContextMenuInfo.position;
            switch (item.getItemId()){
                case Menu.FIRST+1:
                    arrayList.remove(positon);
                    fruitAdapter.notifyDataSetChanged();
                    break;
                case Menu.FIRST+2:
                    Toast.makeText(this,"您点击了取消",Toast.LENGTH_SHORT).show();
                    break;
            }
            return super.onContextItemSelected(item);
        }
    }
  • 相关阅读:
    lampp、xampp安装文档
    tomcat下配置https方式
    1.6:怎么学习Linux
    1.5:linux的应用领域
    1.3:linux的优点和缺点
    1.4:Linux发行版本详解
    1.2:liunx和unix的区别
    1.1:Linux系统简介
    mysql中获取表名&字段名的查询语句
    kettle组件-输出
  • 原文地址:https://www.cnblogs.com/zqxLonely/p/5552837.html
Copyright © 2011-2022 走看看