适配器 Adapter
2015-11-13 10:37
387 查看
<pre name="code" class="java">package com.example.adapter; import android.app.Activity; import android.content.Context; import android.os.Bundle; import android.util.Log; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); ListView listview = (ListView) findViewById(R.id.listView); ArrayAdapter adapter = new MyAdapter(this,-1); listview.setAdapter(adapter); } private class MyAdapter extends ArrayAdapter{ private String [] data; private LayoutInflater inflater = null; public MyAdapter(Context context, int resource) { super(context,resource); data=new String [20]; for(int i=0;i<data.length;i++){ data [i]="数据"+i; } inflater=LayoutInflater.from(context); } @Override public View getView(int position, View convertView, ViewGroup parent) { Log.d("getView",position+""); if(convertView == null){ Log.d("convertView","convertView==null 需要创建新的View"); convertView = inflater.inflate(R.layout.item,null); }else{ Log.d("convertView","复用"); } //View view = inflater.inflate(R.layout.item,null); TextView text = (TextView) convertView.findViewById(R.id.textView1); text.setText(data[position]); TextView text2 = (TextView) convertView.findViewById(R.id.textView2); text2.setText("pos="+position); return convertView; } @Override public int getCount() { return data.length; } } }
<pre name="code" class="java"><RelativeLayout 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"tools:context="com.example.adapter.MainActivity" ><ListViewandroid:id="@+id/listView"android:layout_width="match_parent"android:layout_height="match_parent"></ListView></RelativeLayout>
<?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="vertical" ><TextViewandroid:id="@+id/textView1"android:textSize="12sp"android:padding="10dip"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="没有数据1" /><TextViewandroid:id="@+id/textView2"android:textSize="10sp"android:padding="10dip"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="没有数据2" /></LinearLayout>
相关文章推荐
- 几个ssh和sftp的命令
- iOS9 开发新特性 Spotlight使用
- Git SSH Key 生成步骤
- Android学习之碎片的生命周期
- 画刷(QBrush)和画笔(QPen) 都是用来定义QPainter
- Java获取一年里某季、某月、某周的第一天及最后一天时间
- 安卓属性动画
- BugPhobia发布篇章:学霸在线系统正式发布
- 第四章:位置感知搜索
- 大鱼吃小鱼游戏-index.html -来源慕课网
- BugPhobia发布篇章:学霸在线系统正式发布
- Spinner控件显示下拉列表
- SQL Server 2008 R2占用内存越来越大两种解决方法
- js冒泡排序(Bubble Sort)
- Git入门及上传项目到github中
- Button press & debounce
- Java Timer类小结
- 手机WEB网页 二级联动
- Notepad++找回自动保存缓存内容的文件
- Oracle Clusterware (CRS/GI) - ASM - Database Version Compatibility (文档 ID 337737.1)