简单ListView 使用
来源:互联网 发布:jquery java上传文件 编辑:程序博客网 时间:2024/05/17 08:21
首先要有一个关于ListView的Item各个内容的java文件进行数据的获取及使用。
/*demo.java*/public class demo { String demo; public demo(String demo){ this.demo = demo; } public String getDemo(){ return demo; }}
然后对activity_main.xml编写
<?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="com.example.asus.filedemo.MainActivity"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:layout_width="0dp" android:layout_weight="2" android:layout_height="wrap_content" android:id="@+id/edit"/> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Send" android:id="@+id/send"/> </LinearLayout> <ListView android:layout_width="match_parent" android:layout_height="match_parent" android:id="@+id/listview"> </ListView></LinearLayout>
得到这样的一个PREVIEW视图,接着对ListView的Item进行编写,新建一个item.xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:orientation="vertical" android:layout_width="match_parent"android:layout_height="match_parent"><TextView android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/name"/></LinearLayout>
只是要一个TextView的视图,那么xml文件已经创建好了,接着对ListView设置适配器
新建一个DemoAdapter并继承自ArrayAdapter,泛型传入我们的demo.class
public class DemoAdapter extends ArrayAdapter<demo> { private int resourceId; public DemoAdapter(Context context, int resource, List<demo> objects) { super(context, resource, objects); resourceId = resource; } public View getView(int position, View convertView, ViewGroup parent){ demo demo = getItem(position); View view = LayoutInflater.from(getContext()).inflate(resourceId, null); TextView textView = (TextView) view.findViewById(R.id.name); textView.setText(demo.getDemo()); return view; }}
接着修改MainActivity的代码
public class MainActivity extends AppCompatActivity { private EditText editText; private List<demo> mlist = new ArrayList<>(); private DemoAdapter adapter; private ListView listView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = (EditText) findViewById(R.id.edit); listView = (ListView) findViewById(R.id.listview);//得到ListView的实例 Button button = (Button) findViewById(R.id.send); adapter = new DemoAdapter(MainActivity.this, R.layout.item,mlist);//这里传入当前上下文,item的布局文件,列表数据源 listView.setAdapter(adapter); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { add(); editText.setText("");//对editText的文本清空 } }); } private void add() { demo demo = new demo(editText.getText().toString());//得到editText的文本 mlist.add(demo);//调用ListView的add()方法进行动态添加 adapter.notifyDataSetChanged();//刷新数据 }}
以上就是一个能够动态添加item的简单listView的应用
接着对listView的文档进行动态删除,可以使用OnItemLongClickListener()方法进行操作,调用listView的remove(传入位置) ,接着
再用 adapter.notifyDataSetChanged();进行数据的刷新
PS:现在基本使用RecyclerView来操作列表(一行代码决定ListView GridView)(还可以制作瀑布流)
阅读全文
0 0
- 简单的ListView使用
- ListView简单使用示例
- ListView简单使用
- listview简单使用
- ListView的简单使用
- listview的简单使用
- ListView的简单使用
- 简单的ListView使用
- Android ListView简单使用
- ListView的简单使用
- ListView的简单使用
- ListView 的简单使用
- ListView简单使用
- ListView的简单使用
- Android ListView 简单使用
- listview的简单使用
- ListView的简单使用
- 简单ListView 使用
- html如何设置兼容的背景透明
- javascript第二天
- rxjava代码多层转化
- 2017.6.29
- 单片机时钟程序(4)ds1302.c
- 简单ListView 使用
- Android Studio进行JNI开发的操作过程
- 自己动手写操作系统(三)
- Android 使用开源框架实现上传本地文件至服务器
- [JZOJ5179]哈哈
- Boss3g软件开发规范
- 关于mybatis启动报Result Maps collection already contains value for ...的问题总结
- db2icrt创建purescale实例报错:A reachable IP address could not be determined
- Docker简介